通常我们会用循环的方式来遍历数组.但是循环是 导致js 性能问题的原因之一.一般我们会采用下几种方式来进行数组的遍历: 方式1: for in 循环: var arr = [1,2,3,4,5]; var obj = { a : 1, b : 2, c : 3 }; for( var item in arr|obj ){ fn(item){ // do sth with arr[item]; //do sth wtih obj[item]; }; } 这里的 item: array 的索引值,对…
先说明一下什么是循环引用对象: var a={"name":"zzz"}; var b={"name":"vvv"}; a.child=b; b.parent=a; 这里的a和b都是一个循环引用对象. 循环引用对象本来没有什么问题,序列化的时候才会发生问题,比如调用JSON.stringify()对该类对象进行序列化,就会报错: Converting circular structure to JSON. 而序列化需求很…
var testObj = { 'a':'111', 'b':'222', 'c':'333', 'd':'444'}for(var i in testObj){ console.log(i); //a,b,c,d}for(var i in testObj){ console.log(testObj[i]); //111,222,333,444…
* for in for (var prop in o) { if (o.hasOwnProperty(prop)) { console.log(o[prop]); } } * Object keys Object.keys(o).forEach(function(key, idx) { console.log( o[key] ); })…