2015年6年,发布了ECMAScript6(ES6),它的目标是使js可以用来编写复杂的大型应用程序,成为企业级开发语言。
这里说到的ECMAScript 只是JS里的一部分内容,一个完整的JavaScipt应该包括:
- 核心(ECMAScipt)
- 文档对象模型(DOM)
- 浏览器对象模型(BOM)
参数篇arguments
js的函数对参数没有要求,所以不管你传入的参数是否与函数匹配,都能调用。 比如:
function abc(){
var arrlen = arguments.length;
console.log(arrlen);
var str = '';
for(var a of arguments){
str += a+',';
}
console.log(str);
}
abc();//长度0
abc(1,2);//长度2,输出1,2,
abc('tom','jerry','kane');//长度3,输出tom,jerry,kane,
上面代码中还有一个关键字arguments,它只在函数内部起作用,并且永远指向当前函数的调用者传入的所有参数。arguments类似Array但它不是一个Array。
插件篇
我们可以扩展jQuery来实现自定义方法,这种方式也称为编写jQuery插件。
编写一个jQuery插件的原则:
- 给$.fn绑定函数,实现插件的代码逻辑;
- 插件函数最后要return this;以支持链式调用;
- 插件函数要有默认值,绑定在$.fn.“pluginName”.defaults上;
- 用户在调用时可传入设定值以便覆盖默认值。