একটি জাভাস্ক্রিপ্ট সংরক্ষিত কীওয়ার্ডকে ভেরিয়েবলের নাম হিসাবে কেন অনুমোদিত?


21

আমরা জানি যে letএটি একটি সংরক্ষিত কীওয়ার্ড যা জাভাস্ক্রিপ্টে একটি চলককে সংজ্ঞায়িত করে।

var let = 2;
console.log(let); // return 2

তাহলে কেন এটি ত্রুটি নয়?


উত্তর:


25

let কঠোর মোডে কেবল একটি সংরক্ষিত শব্দ:

'use strict';
var let = 5;

আনকচড সিনট্যাক্স এরিয়ার: অপ্রত্যাশিত কঠোর মোড সংরক্ষিত শব্দ

এটি কারণ ব্রাউজারগুলি সাধারণত সর্বোপরি পিছনে সামঞ্জস্যকে অগ্রাধিকার দেয় । যদিও letES2015 এ চালু হয়েছিল (এবং এর ব্যবহারের আগে কিছুটা আগে এটি ব্যবহার করা হয়েছিল), পূর্বের স্ক্রিপ্টগুলি যা letভেরিয়েবলের নাম হিসাবে ব্যবহৃত হয়েছিল তা পছন্দসইভাবে চালিয়ে যাবে। উদাহরণস্বরূপ, আপনার স্ক্রিপ্টটি যদি ২০০৮ সালে লেখা হয়:

var let = 2;
console.log(let);

তারপরে এটি ২০২০ সালেও কাজ চালিয়ে যেতে থাকবে।

অনুরূপ কারণে, asyncএবং awaitএছাড়াও পরিবর্তনশীল নাম অনুমতি

কেন letকঠোর মোডে ত্রুটিগুলির ব্যবহার - কঠোর মোডে 2009 সালে ES5 এ প্রবর্তন করা হয়েছিল then তারপরে, ভাষা ডিজাইনাররা দেখেছিলেন যে ভেরিয়েবলগুলি ঘোষণার জন্য নতুন কীওয়ার্ড (গুলি) ব্যবহার করা ভবিষ্যতে একটি সম্ভাবনা ছিল, তবে এটি ছিল না এখনও পাথর স্থাপন করা হয়নি, এবং ES6 এখনও অনেক দূরে ছিল। ES5 বের হয়ে গেলে, স্ক্রিপ্ট লেখকরা কোডকে কম বিভ্রান্ত করতে কঠোর মোডে বেছে নিতে পারেন এবং নীরব ত্রুটিগুলি স্পষ্ট ত্রুটিতে পরিবর্তন করতে পারেন। যদিও letপরিবর্তনশীল ঘোষণার জন্য এখনও ব্যবহারযোগ্য ছিল না , কঠোর মোডে পরিবর্তনশীল নাম হিসাবে এটিকে নিষিদ্ধ করা ভবিষ্যতের স্ক্রিপ্টগুলির পাঠযোগ্যতার উন্নতি করেছিল যা কঠোর মোডে বেছে নিয়েছিল, এবং বিদ্যমান স্ক্রিপ্টগুলিও ভাঙ্গেনি।


2

letএবং অন্যান্য কিছু কাজ কেবল কড়া মোডে সংরক্ষিত শব্দ হিসাবে কাজ করে। চশমা বলেছেন

কঠোর মোডে অননুমোদিত : ঐ যে বিষয়গতভাবে কঠোর মোডে কোডে, শনাক্তকারী হিসাবে অননুমোদিত করা হয়: let, static, implements, interface, package, private, protected, এবং public;

আপনি letশব্দের তালিকার ভিতরে দেখতে পাচ্ছেন যা কেবলমাত্র কঠোর মোডে অনুমোদিত নয়। আপনি যদি letভেরিয়েবল নাম হিসাবে ব্যবহার করার জন্য ত্রুটি নিক্ষেপ করতে চান তবে আপনি কঠোর মোড ব্যবহার করতে পারেন

"use strict";
var let = 3


0

'কঠোর ব্যবহার';

এটি একটি ত্রুটি দেবে। আপনার কোডটি সংকলন করতে ওয়েবপ্যাক, গ্রান্টের মতো বান্ডিল সরঞ্জামগুলি ব্যবহার করুন।


প্রশ্নটি দু'বার পড়ুন
মনজিৎ ঠাকুর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.