本文探讨 JavaScript 中 new 关键字的使用误区。建议避免使用 new Array()、new Number/String/Boolean 及 new Function,推荐分别使用 []、原始类型和函数表达式。同时指出 new function() 应替换为对象字面量,以提升代码可读性与错误检查效率。
避免使用 new 创建数组和基础类型
无需使用 new Array(),直接使用 [] 即可。
避免使用 new Number、new String 或 new Boolean 等构造函数。
不要使用 new Function 来创建函数。
避免使用 new Function 创建函数
例如,若需编写如下代码:
代码如下:
frames[0].onfocus = new Function("document.bgColor='antiquewhite'") 应改为以下写法:
代码如下:
frames[0].onfocus = function () {document.bgColor = 'antiquewhite';}; 第二种写法能让编译器更早地识别函数体,从而尽早发现错误。
避免使用 new function 创建对象
当编写如下代码时:
Js代码
代码如下:
myObj = new function () {
this.type = 'core';
}; 此时应改为:
Js代码
代码如下:
myObj = {
type: 'core'
};