12种不宜使用的Javascript语法
这篇讲的是如何从JavaScript的“糟粕”中提炼出精粹。作者从《Javascript语言精粹》一书出发,指出其作者Douglas Crockford——JSON的创造者——的核心观点:由于JavaScript设计仓促,语言中遗留了许多有缺陷的特性。文章的核心价值,在于梳理并阐释了书中附录列出的12种应避免使用的语法。 它并非泛泛而谈,而是具体剖析了每个“糟粕”的害处。例如,它解释了为何应永远使用“===”而非“==”,因为后者隐式的类型转换规则极易引发混乱;分析了“with”语句如何导致作用域模糊和性能下降;并指出“eval”带来的安全与维护风险。文章还对一些常见写法提出了更清晰的替代方案,比如用函数表达式(var foo = function() {})代替函数声明,以避免提升带来的困惑,以及用对象字面量和原型继承的变通方法来替代可能出错的“new”语句。 作者的评述直接而具体,不仅指出了“不要做什么”,更通过对比说明了“为什么”以及“应该怎么做”。这为开发者提供了一份简洁有力的代码审查清单,有助于规避那些隐蔽的陷阱,写出更干净、健壮的JavaScript代码。