2014-04-23 17 views

उत्तर

48

अंतर में निहित है कि यदि संग्रह जिस पर आप पुनरावृत्ति कर रहे हैं एक वस्तु है जो एक length संपत्ति है, तो _.forEach() इस पर पुनरावृति होगा जैसे कि वह एक सरणी थे, जबकि _.forOwn() एक वस्तु की तरह इस पर पुनरावृति जाएगा ।

मान लें कि वस्तु है:

_.forEach(a, function(val, key) { 
    console.log('a[' + key + '] = ' + val); 
}); 

आप उत्पादन मिल जाएगा: यह खत्म हो पुनरावृत्ति जबकि

a[0] = undefined 
a[1] = undefined 

a = { 
    x: 100, 
    y: 200, 
    length: 2 
} 

आप के रूप में इस पर पुनरावृति हैं _.forOwn() के साथ आपको अधिक उचित मिलेगा:

a[x] = 100 
a[y] = 200 
a[length] = 2 
संबंधित मुद्दे