ईएस 6 में वसा-तीर फ़ंक्शन ( =>
) जोड़ा गया है , जिसमें सामान्य कार्यों से दो प्रमुख अंतर हैं:
- कम सिंटैक्स (यदि आप एकल-अभिव्यक्ति बॉडी का उपयोग करते हैं तो निहित रिटर्न सहित)
this
आसपास के दायरे से विरासत
ये दोनों बहुत ही उपयोगी विशेषताएं हैं, लेकिन मुझे लगता है कि उनके मूल्य और अनुप्रयोग में पूरी तरह से अलग हैं - कभी-कभी मैं एक, या दूसरे, या दोनों, या न ही चाहता हूं। यह अजीब लगता है कि अगर मैं एक छोटी वाक्य रचना समारोह का उपयोग करना चाहते, मुझे लगता है कि है भी उपयोग करने के लिए this
-modifying व्यवहार। और इसके विपरीत। मैं नहीं देखता कि इन दोनों क्षमताओं को भाषा के एकल जोड़ के रूप में क्यों लागू किया जाता है।
क्या होगा यदि मैं इसके निहित रिटर्न और संक्षिप्तता के लिए एक छोटे वाक्यविन्यास फ़ंक्शन का उपयोग करना चाहता हूं (किसी संदर्भ में जहां एक पूर्ण function (..) { return ...}
थोड़ा कम पठनीय होगा), लेकिन मैं this
कॉलिंग संदर्भ को संदर्भित करने के लिए अपने फ़ंक्शन में उपयोग करना चाहता हूं? ऐसा करने का कोई तरीका नहीं है।
कॉफीस्क्रिप्ट में दोनों ->
और =>
शैली के कार्य हैं, और जाहिरा तौर पर ईएस 6 ने =>
वहां से शैली उधार ली है । तो मेरा सवाल है, ES6 भी ->
शैली उधार क्यों नहीं किया ?
this
पूर्ण फ़ंक्शन घोषणा में बंद होने के लिए बाध्य कर सकते हैं । यह वह हिस्सा नहीं हो सकता है जिसके बारे में आप चिंतित हैं।
arguments
या तो बांध नहीं सकते ।