1.创建对象,数组
// bad
var item = new Object();
// good
var item = {};
// bad
var items = new Array();
// good
var items = [];
2.不明确数组长度追加内容要用 push
3.复制数组时使用slice
var len = items.length,
itemsCopy = [],
i;
// bad
for (i = 0; i < len; i++) {
itemsCopy[i] = items[i];
}
// good
itemsCopy = items.slice();
4.使用slice将类数组的对象转成数组:
function trigger() {
var args = [].slice.apply(arguments);
...
}
5.对字符串使用单引号''(因为大多时候我们的字符串。特别html会出现"")
6.函数表达式:
// 匿名函数表达式
var anonymous = function() {
return true;
};
// 有名函数表达式
var named = function named() {
return true;
};
// 立即调用函数表达式
(function() {
console.log('Welcome to the Internet. Please follow me.');
})();
绝对不要在一个非函数块里声明一个函数,把那个函数赋给一个变量。浏览器允许你这么做,但是它们解析不同。
注: ECMA-262定义把块定义为一组语句,函数声明不是一个语句。
// bad
if (currentUser) {
function test() {
console.log('Nope.');
}
}
// good
if (currentUser) {
var test = function test() {
console.log('Yup.');
};
}
绝对不要把参数命名为 arguments, 这将会逾越函数作用域内传过来的 arguments 对象。
// bad
function nope(name, options, arguments) {
// ...stuff...
}
// good
function yup(name, options, args) {
// ...stuff...
}
以上的内容摘自作者:破 狼 ,更多详细内容请看
出处:
https://www.cnblogs.com/whitewolf/p/4491447.html
网友评论