জাভাস্ক্রিপ্ট কেন ভেরিয়েবল উত্তোলন করে?
ডিজাইনাররা যখন উত্তোলন বাস্তবায়ন করার সিদ্ধান্ত নিয়েছিল তখন তাদের যুক্তি কী ছিল? অন্য কোন জনপ্রিয় ভাষা কি এটি করে?
দয়া করে ডকুমেন্টেশন এবং / অথবা রেকর্ডগুলির সম্পর্কিত লিঙ্কগুলি সরবরাহ করুন।
জাভাস্ক্রিপ্ট কেন ভেরিয়েবল উত্তোলন করে?
ডিজাইনাররা যখন উত্তোলন বাস্তবায়ন করার সিদ্ধান্ত নিয়েছিল তখন তাদের যুক্তি কী ছিল? অন্য কোন জনপ্রিয় ভাষা কি এটি করে?
দয়া করে ডকুমেন্টেশন এবং / অথবা রেকর্ডগুলির সম্পর্কিত লিঙ্কগুলি সরবরাহ করুন।
div
উত্তর:
স্টোয়ান স্টেফানভ যেমন "জাভাস্ক্রিপ্ট প্যাটার্নস" বইয়ে ব্যাখ্যা করেছেন, উত্তোলন জাভাস্ক্রিপ্ট ইন্টারপ্রেটার বাস্তবায়নের ফলাফল।
জেএস কোড ব্যাখ্যা দুটি পাসে সম্পাদিত। প্রথম পাসের সময়, দোভাষী দের পরিবর্তনশীল এবং ফাংশন ঘোষণার প্রক্রিয়া করে।
দ্বিতীয় পাসটি প্রকৃত কোড কার্যকরকরণের পদক্ষেপ। দোভাষী দের ফাংশন এক্সপ্রেশন এবং অঘোষিত ভেরিয়েবলগুলি প্রক্রিয়া করে।
সুতরাং, আমরা এই জাতীয় আচরণটি বর্ণনা করতে "উত্তোলন" ধারণাটি ব্যবহার করতে পারি।
"ওয়ার উত্তোলন এইভাবে ফাংশন উত্তোলনের অনিয়ন্ত্রিত পরিণতি ছিল, কোনও ব্লক সুযোগ ছিল না, [এবং] জেএসকে ১৯৯৫ এর রাশ কাজ হিসাবে।"
"ফাংশন উত্তোলন টপ-ডাউন প্রোগ্রামটি পচানোর অনুমতি দেয়, নিখরচায় 'এসইসি' করুন, ঘোষণার আগে কল করুন; বিভিন্ন উত্তোলন পাশাপাশি ট্যাগ করা হয়েছে।"
আমি অন্য কোনও জনপ্রিয় ভাষা জানি না যা একই পদ্ধতিতে চলক উত্তোলন করে। আমি মনে করি এমনকি অ্যাকশনস্ক্রিপ্ট - ফ্ল্যাশ বিকাশে ব্যবহৃত ECMAScript এর আরেকটি প্রয়োগ - উত্তোলন বাস্তবায়ন করেনি। এটি জাভাস্ক্রিপ্ট শিখছে এমন অন্যান্য ভাষার সাথে পরিচিত বিকাশকারীদের জন্য বিভ্রান্তি ও হতাশার কারণ হয়ে দাঁড়িয়েছে।
আপডেট: মন্তব্যগুলি থেকে পাইথনেরও একই রকম পরিবর্তনশীল উত্তোলনের আচরণ রয়েছে ।
এর কারণ জাভাস্ক্রিপ্ট ইন্টারপ্রেটার দুটি চক্রের কোডকে ব্যাখ্যা করে।
1 ম চক্রের মধ্যে সমস্ত ভেরিয়েবল এবং ফাংশন ঘোষণাগুলি এটি সঞ্চালিত ফাংশন স্কোপের শীর্ষে নিয়ে যায় This এটি কার্যকর হওয়ার আগেই এটি ফাংশনের variableObjectsজন্য তৈরি করতে সহায়তা করে execution context।
২ য় ধাপে, মূল্য নির্ধারণ, কোড স্টেটমেন্ট এবং ফাংশন কলগুলি প্রত্যাশিত পদ্ধতিতে লাইনে স্থান করে।
আপনি এখানে আরও কিছু বিশদ পড়া আছে।
এটা আপনি আচরণ চারপাশে একটি ভালো ধারণা দিতে হবে let, constএবং classঘোষণা, এছাড়াও প্রাধান্য এটা পরিবর্তনশীল এবং ফাংশন মধ্যে অনুসরণ করে।