तो मूल desctucturing ठीक है, {a, b} = obj
a = obj.a; b = obj.b
के लिए पारदर्शी।क्या बीएसएल का ईएस 6 ऑब्जेक्ट का कार्यान्वयन सही है?
मेरा प्रश्न एक अजीब वाक्य रचना है कि मैं गलती से भर में भाग गया और मैं अगर किसी को कल्पना पर मुझसे बात कर सकते हैं सोच रहा हूँ का एक सा के आसपास है के बाद से मैं यह नहीं मिल सकता है:
({a, b} = obj).c
कि दो करता है a
, b
असाइनमेंट और फिर obj.c
लौटाता है। यह वास्तव में काफी एक बाइट धारा विकोडक के लिए मेरे लिए उपयोगी है, के रूप में मैं लिख सकते हैं:
let width = ({bytes} = intDecode(bytes)).number;
मेरे मुद्दा यह है कि मैं कहीं भी इस वाक्य रचना नहीं देखा है और कुछ है जो या तो गलत तरीके से कार्यान्वित पर भरोसा नहीं करना चाहती है या प्रस्ताव चरण में।
यह (के रूप में 'obj = ही है । intDecode (बाइट)) संख्या; बाइट्स = obj.bytes' (शायद मूल्यांकन आदेश को छोड़कर) - ES5 में एक ही विषम वाक्यविन्यास। सुनिश्चित करें कि 'बाइट्स' कहीं घोषित किया गया है। – Bergi