如何避免jslint向我发出警告
'预期'Object.create(null)'而是看到'new Object'
使用这个非常简单的代码行时:
var myDummyObject = new Object();
答案 0 :(得分:3)
嗯,jslint是固执己见的,你使用它是因为你想知道它对事物的看法。显然,它认为不应该使用new Object()
。您看到的问题在此处记录:http://www.jslint.com/help.html。它没有说明原因。
这里有很多关于它的讨论:What is the difference between new Object()
and object literal notation?。 {}
语法比new Object()
更快更短,这听起来更像是一个理由。
正如您显然所知,您可以使用以下任何一种:
var myDummyObject = {};
var myDummyObject = Object.create(null);
后者将创建一个带有空原型的对象,因此它不会像.hasOwnProperty()
那样有方法,虽然通常不需要,但偶尔会有用。