35
किसी ऑब्जेक्ट पर पुनरावृत्ति करते समय इन दो तरीकों के बीच क्या अंतर है?lodash में _.forEach और _.forOwn के बीच अंतर
किसी ऑब्जेक्ट पर पुनरावृत्ति करते समय इन दो तरीकों के बीच क्या अंतर है?lodash में _.forEach और _.forOwn के बीच अंतर
अंतर में निहित है कि यदि संग्रह जिस पर आप पुनरावृत्ति कर रहे हैं एक वस्तु है जो एक 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