數(shù)組貌似也可以用for in 遍歷,分別處理有必要嗎
if (isArray) {
? ? ? ? ? ?for (; i < length; i++) {
? ? ? ? ? ? ? ?value = callback.apply(obj[i], args);
? ? ? ? ? ? ? ?if (value === false) {
? ? ? ? ? ? ? ? ? ?break;
? ? ? ? ? ? ? ?}
? ? ? ? ? ?}
? ? ? ?} else {
? ? ? ? ? ?for (i in obj) {
? ? ? ? ? ? ? ?value = callback.apply(obj[i], args);
? ? ? ? ? ? ? ?if (value === false) {
? ? ? ? ? ? ? ? ? ?break;
? ? ? ? ? ? ? ?}
? ? ? ? ? ?}
}
2016-04-07
厲害厲害
2014-11-24
首先做框架要考慮兼容與性能問(wèn)題
for in 語(yǔ)句對(duì)數(shù)組對(duì)象進(jìn)行遍歷潛在的bug在于:如果原生Array類被其他的js腳本庫(kù)進(jìn)行了原型擴(kuò)展(比如多加一個(gè)toJSON方法即Array.prototype.toJSON=xxxx),那么用for in遍歷擴(kuò)展后的Array對(duì)象的邏輯將與遍歷原生Array對(duì)象的邏輯發(fā)生差異。