मेरा एक सहकर्मी कोड की ES6 लाइन ...जावास्क्रिप्ट में एक वाक्यविन्यास त्रुटि 'foo' क्यों नहीं है? आप शायद अनुमान लगा सकते हैं कि वह वस्तु <code>{uuid: contentUuid }</code> वापसी करने का इरादा है, लेकिन इसकी एक तीर समारोह के बाद से, घुंघराले ब्रेस <code>{</code> वास्तव में शुरू होता है
return map(orderedContentUuids, contentUuid => { uuid: contentUuid });
लिखा था एक नया ब्लॉक (सही कोड return map(orderedContentUuids, contentUuid => ({ uuid: contentUuid }));
होगा)।
लेकिन, अप्रत्याशित रूप से, यह कोड बिना किसी त्रुटि के पारदर्शी और चलाता है। कोई त्रुटि नहीं है क्योंकि uuid: contentUuid
contentUuid
का मूल्यांकन करने लगता है।
आप तब देख सकते हैं कि यदि आप अपना जावास्क्रिप्ट कंसोल foo: 'bar'
डालते हैं तो यह "bar"
का मूल्यांकन करता है।
हू? क्या चल रहा है। चूंकि वह वैध जेएस कब है?
दरअसल घुंघराले ब्रेसिज़ इस संदर्भ में एक वस्तु विचार नहीं किया जाएगा। –