创建 JS 对象:使用文字表示法或设置变量

creating a JS object: use literal notation or set variables?

本文关键字:表示 设置 变量 文字 JS 对象 创建      更新时间:2023-09-26

哪个更快和/或性能更高,还是真的无关紧要,取决于偏好?

选项 1:使用对象文字表示法:

var Company = {
    colors : ['#000000', '#ffffff'],
    answers : ['A','B','C','D'],
};

选项 2:不确定这叫什么,但我见过它,尤其是在类和原型中

var Company = {};
Company.colors = ['#000000', '#ffffff'];
Company.answers = ['A','B','C','D'];

这完全取决于浏览器以及它当前如何尝试优化和运行代码。例如,使用renatoargh的测试,Chrome使用选项2更快,Firefox使用选项1更快。

还有第三个选项,可以实例化的函数对象:

function Company(colors, answers) {
    this.colors = colors;
    this.answers = answers;
}
var company = new Company(['#000000', '#ffffff'], ['A','B','C','D']);

这是FF中最慢的选项,而在Chrome中是第二快的选项(更新的测试)。

总之,您无法确定哪种技术最快,因为这完全取决于。使用最适合您的模式。