这与此问题有些相关,但我并不是要求有关JavaScript最佳实践的资源,而是您的实际建议.
我将从我自己的列表开始.如果您确定该建议没有争议,您可以发布答案或直接编辑问题.
开始了:
var===比较Number(),String(),Boolean()typeofinstanceof检查内置对象类型Object.prototype.toString()以避免跨框架问题,例如
Object.prototype.toString.call(obj) === '[object Array]'
Run Code Online (Sandbox Code Playgroud)检查this构造函数,例如
function MyObject() {
if(!(this instanceof arguments.callee))
throw new Error('constructor called with invalid `this`');
// [...]
}
Run Code Online (Sandbox Code Playgroud)使用匿名函数进行命名空间不会污染全局范围,例如
(function() {
var noGlobalVar = 'foo';
// [...]
})();
Run Code Online (Sandbox Code Playgroud)签hasOwnProperty()入for..in循环 - 不要假设没有人搞乱原型
for..in循环迭代数组或类数组对象的元素| 归档时间: |
|
| 查看次数: |
1580 次 |
| 最近记录: |