var test = function() {
'use strict';
var mapNames = {
'name': 'City Name:',
'coord.lat': 'Latitute:'
};
for (var key in mapNames) {
var names;
if (mapNames[key]) {
name = mapNames[key];
} else {
name = key;
}
}
console.log(name);
}
test();
उपरोक्त कोड में मैंने परिवर्तनीय names
घोषित करके और name
का उपयोग करके गलती की है। मैंने सोचा कि 'सख्त' मोड इसे पकड़ लेगा लेकिन ऐसा नहीं हुआ। क्या इस मामले में कोई त्रुटि नहीं डालना चाहिए?जावास्क्रिप्ट 'सख्त मोड' अपेक्षित काम नहीं कर रहा है?
को "सख्त उपयोग" नहीं करना चाहिए, ठीक उसी तरह से रोकें? –
@JanDvorak '" सख्त उपयोग "' नए वैश्विक चर को परिभाषित करने से रोक देगा, यहां हम मौजूदा चर _ को असाइनमेंट कर रहे हैं, इसके बारे में सोचें क्योंकि 'नाम' वैश्विक दायरे में है, जैसे 'विंडो। ब्लॉब', 'विंडो। कंसोल 'और इतने पर। –
आह, ब्राउज़र पहले से ही उस नाम के साथ एक चर प्रदान करता है। क्या हमारे पास एक सुपर-सख्त मोड हो सकता है जहां ग्लोबल्स को नाम से एक्सेस नहीं किया जा सकता है? :-) –