为什么这样:
setTimeout(function(){
var myObj = {
'hello':'world',
'more':'things'
};
_.each(myObj, function(value, key){
console.log(key, value);
});
// why doesn't this output anything?
_.each(performance.timing, function(value, key){
console.log(key, value);
});
// just to make sure we can
console.log(performance.timing);
},500);

<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
&#13;
输出:
> hello world
> more things
> PerformanceTiming {}
我希望对象的键和值的输出与myobj
相同。
下划线:http://jsfiddle.net/a43vb7gd/1/
lodash:http://jsfiddle.net/mkxncwax/1/
在Ubuntu 14.04.2 LTS上的Chrome 43.0.2357.81和Firefox 38.0上重现。
答案 0 :(得分:0)
我唯一能想到的是宿主对象的怪异。 Object.keys(performance.timing)
返回并清空数组。如果代码在页面上运行而在控制台中运行,则代码的行为也会有所不同。