可能是一个愚蠢的问题,但只是想知道以下几点之间是否存在任何差异(表现明智)。
SomeObject.prototype.myFunc = function() {
var a = 123;
var b = "something";
...
}
SomeObject.prototype.myFunc = function() {
var loc = {};
loc.a = 123;
loc.b = "something";
...
}
我一直在做第二种方式,因为它通过执行console.log(loc)更容易调试,而且它也是我做服务器端代码的习惯定义本地结构。
答案 0 :(得分:0)
根据Phil(http://jsperf.com/direct-variable-vs-object-property-assignment)所做的测试,使用直接变量赋值和对象属性赋值之间存在明显差异。
肯定会使用直接变量赋值
答案 1 :(得分:0)
从技术上讲,对象的成本毫无疑问,因为对象的数据结构比原始类型复杂得多。
实际上,更好的可读性和可维护性也很重要。除非您的代码在Node.js的服务器端运行,否则您的代码不太可能像这样运行数百万次,因此在这一点上的性能问题并非真正引人注目或成为瓶颈。 / p>