উত্তর:
ES6- importএ রফতানি হওয়া মানগুলিতে সরাসরি পঠনযোগ্য দর্শন। ফলস্বরূপ, আপনি যখন করবেন import a from "somemodule";, আপনি মডিউলটিতে aকীভাবে ঘোষণা করবেন তা নির্ধারণ করা যাবে না a।
তবে, যেহেতু আমদানিকৃত ভেরিয়েবলগুলি লাইভ দর্শন, তাই তারা রফতানিতে "কাঁচা" রফতানি পরিবর্তনশীল অনুযায়ী পরিবর্তন করে change নিম্নলিখিত কোড বিবেচনা করুন (নীচের রেফারেন্স নিবন্ধ থেকে ধার করা):
//------ lib.js ------
export let counter = 3;
export function incCounter() {
counter++;
}
//------ main1.js ------
import { counter, incCounter } from './lib';
// The imported value `counter` is live
console.log(counter); // 3
incCounter();
console.log(counter); // 4
// The imported value can’t be changed
counter++; // TypeError
আপনি দেখতে পাচ্ছেন, পার্থক্যটি আসলেই রয়েছে lib.js, না main1.js।
সংক্ষেপ:
importমডিউলে সম্পর্কিত ভেরিয়েবলগুলি কীভাবে ঘোষণা করবেন তা বিবেচনা ছাড়াই আপনি বিড ভেরিয়েবলগুলি বরাদ্দ করতে পারবেন না ।let-vs- constশব্দার্থবিজ্ঞান মডিউলটিতে ঘোষিত ভেরিয়েবলের জন্য প্রযোজ্য।
constএটিকে কোথাও পুনরায় সাইন করা বা রিবাউন্ড করা যাবে না।letএটি কেবল মডিউলে পুনর্নির্দিষ্ট করা যাবে (তবে ব্যবহারকারী নয়)। যদি এটি পরিবর্তন করা হয় তবে import-ed পরিবর্তনশীল সেই অনুযায়ী পরিবর্তন হয়।
exportকীওয়ার্ডের বিশদ এখানে । বর্তমানে এটি কোনও ওয়েব-ব্রাউজারের দ্বারা স্থানীয়ভাবে সমর্থিত নয়।