大多数JavaScript的类型检查都是通过字符串比较完成的。例如,
if (typeof(x)=='undefined')
是检查变量是否从未定义的唯一方法。这会对绩效产生影响吗?
答案 0 :(得分:0)
这是检查未定义的唯一正确方法。 支票的性能损失很小。这是一个简单的测试,您可以运行并查看实际数字。
function performanceTest(fn, count){
var start = new Date();
for(var i = 0; i < count; i++){
fn.call(fn);
}
var end = new Date();
console.log(end - start);
}
performanceTest(function(){
typeof fff == 'undefined'
}, 100000);
在Chrome上运行支票需要花费87毫秒。