相关疑难解决方法(0)

`new Object()`和object literal notation有什么区别?

这个基于构造函数的语法创建对象有什么区别:

person = new Object()
Run Code Online (Sandbox Code Playgroud)

...和这个文字语法:

person = {
    property1 : "Hello"
};
Run Code Online (Sandbox Code Playgroud)

虽然JSLint更喜欢使用对象文字表示法,但它们似乎都做同样的事情.

哪一个更好,为什么?

javascript jslint object

190
推荐指数
8
解决办法
13万
查看次数

为什么arr = []比arr = new Array更快?

我运行此代码并得到以下结果.我很想知道为什么[]更快?

console.time('using[]')
for(var i=0; i<200000; i++){var arr = []};
console.timeEnd('using[]')

console.time('using new')
for(var i=0; i<200000; i++){var arr = new Array};
console.timeEnd('using new')
Run Code Online (Sandbox Code Playgroud)
  • 使用[]:299ms
  • 使用new:363ms

感谢Raynos,这里是此代码的基准,以及一些更可行的方法来定义变量.

在此输入图像描述

javascript performance

144
推荐指数
2
解决办法
5万
查看次数

使用变量"name"不适用于JS对象

可以在这个小片段中看到该行为(将其作为全局脚本执行):

var name = {};
name.FirstName = 'Tom';
alert(name.FirstName);
Run Code Online (Sandbox Code Playgroud)

undefinedChrome中的警报产生但可以在IE和Firefox中使用.当我这样做时,我也得到一个奇怪的价值

alert(name);
Run Code Online (Sandbox Code Playgroud)

javascript object window-object

26
推荐指数
3
解决办法
2230
查看次数

标签 统计

javascript ×3

object ×2

jslint ×1

performance ×1

window-object ×1