JS 函数
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <script > //参数无需声明 调用时少了参数自动默认undefined function myFunction(x,y){ if(x==undefined){ x=0; } } //参数太多 使用arguments来调用参数数组 var x=fun1(20,30,50,60); function fun1(){ for(i=0;i<arguments.length;i++){ console.log(arguments[i]); } return 1; } //函数构造器 function fun2(arg1,arg2){ this.name=arg1; this.age=arg2; } //创建新对象 var p=new fun2("str",18); console.log(p); //call方法 参数为对象 var person={ name:function(){ return this.name; }, //带参数引用 nameAge:function(age){ return this.name+" "+age; } }; var p1={ name:"str" }; var p2={ name:"lll" }; console.log(person.name.call(p2)); console.log(person.nameAge.call(p1,18)); //apply() 方法 和call方法类似 但参数可以为数组 var animal={ name:function(age,city){ return this.name+" "+age+" "+city; } }; var dog={ name:"dog" }; console.log(animal.name.apply(dog,[5,"NewYork"])); //在数组应用 //数组无max方法 Math.max.apply(null,[1,2,13]); //闭包 自调用函数 var add=(function(){ var counter=0; return function(){return counter=counter+1;} })(); add(); add(); console.log(add()); //单独使用this 对象为全局对象[object Window] var t=this; //事件处理中的this 指的是接收此事件的 HTML 元素 //箭头函数 hello=()=>{ return "str"; } //只有返回值 可以去掉return hello1=()=>"str1"; //带参数 hello2=(arg)=>"str2"+arg; </script> </body> </html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律