এটি একটি অবজেক্ট ডেস্ট্রাকচারিং অ্যাসাইনমেন্ট। আমার মতো, আপনি এটি অবাক করে দেখতে পেয়েছেন কারণ ES6 অবজেক্টের ডেস্ট্রাকচারিং সিনট্যাক্সটি দেখতে দেখতে লাগে তবে অবজেক্ট আক্ষরিক নির্মাণের মতো আচরণ করে না।
এটি আপনাকে ছড়িয়ে দেওয়া খুব ক্ষুদ্র রূপকে সমর্থন করে পাশাপাশি ক্ষেত্র এবং ডিফল্ট যুক্তিগুলির নামকরণ করে:
মূলত, এটি হ'ল {পুরাতনকি নাম: নিউকিমনাম = ডিফল্ট মূল্য, ...}} ':' কী / মান বিভাজক নয়; '=' হয়।
এই ভাষা ডিজাইনের সিদ্ধান্তের কিছু ফলস্বরূপ হ'ল আপনাকে পছন্দ মতো জিনিসগুলি করতে হতে পারে
; ({A, B} = some_object);
অতিরিক্ত পেরেনগুলি বাম কোঁকড়া ধনুর্বন্ধনীগুলি ব্লক হিসাবে পার্সিং প্রতিরোধ করে এবং শীর্ষস্থানীয় সেমিকোলন পূর্ববর্তী লাইনের কোনও ক্রিয়াকলাপের জন্য পেরেনগুলি পার্স হতে বাধা দেয়।
আরও তথ্যের জন্য দেখুন: https://developer.mozilla.org/en-US/docs/Web/ জাভা স্ক্রিপ্ট / রেফারেন্স / অপারেটর /
ডিস্ট্রাকচার_অ্যাসাইনমেন্ট
সাবধান, অবজেক্ট ডেস্ট্রাকচারিং অ্যাসাইনমেন্টের সময় মূল ত্রুটিগুলি ছুঁড়ে না ফেলে; আপনি কেবল "অপরিজ্ঞাত" মানগুলি দিয়ে শেষ করেছেন, এটি কোনও মূল ত্রুটি বা অন্য কোনও ত্রুটি যা নিঃশব্দে 'অপরিজ্ঞাত' হিসাবে প্রচারিত হয়েছিল whether
> var {rsienstr: foo, q: bar} = {p:1, q:undefined};
undefined
> foo
undefined
> bar
undefined
>