मुझे नोडजेएस में [].forEach
के साथ अजीब समस्या है।नोडजेएस [] .forEach अपरिभाषित
(का उपयोग करते हुए NodeJS v5.4.1)
एक समारोह
function _buildUserQuestionsForDisplay(question,callback){
var res = {}
["is_open","created","deleted","_id"].forEach(function(v){
res[v] = question[v]
})
...
...
}
एक त्रुटि फेंकने में इस कोड है:
["is_open","created","deleted","_id"].forEach(function(v){
TypeError: Cannot read property 'forEach' of undefined
यह काम करता है अगर मैं
करने के लिए कोड बदल रहा हूँvar arr = ["is_open","created","deleted","_id"];
arr.forEach(function(v){
res[v] = question[v]
})
मेरे पास टेस है Chrome.console
पर वही कार्य किया और पहला तरीका काम करता है।
मुझे पता है कि V8
जेएस इंजन का उपयोग कर दोनों, क्या यह एक बग या कुछ है जिसे मैं जावास्क्रिप्ट नियमों के साथ याद कर रहा हूं?
धन्यवाद!
क्या नोड भी उस कोड के एक स्टैंडअलोन न्यूनतम संस्करण के साथ विफल रहता है? क्या आप किसी भी मॉड्यूल का उपयोग कर रहे हैं जो 'Array.prototype' या' Object.prototype' को बदल सकता है? – robertklep
यदि आप 'var res = {}' के बाद अर्द्ध-कोलन डालते हैं तो क्या यह काम करता है? – Andy
@ एंडी आप सही हैं, मुझे थोड़े बेवकूफ लगते हैं, जावास्क्रिप्ट कंपाइलर को इसके बारे में माफ कर देना चाहिए अगर मैं नई लाइन डालूं, नहीं? –