جاوا اسکریپت کونسٹ
- صفحه قبلی JS Let
- صفحه بعدی آپراتورهای JS
ECMAScript 2015
ES2015 نے دو اہم جاوا اسکریپٹ نیو کلیدی کا تعاون دیا ہے:let
اور const
.
از طریق const
تعین کردہ متغیرات سے let
تعین کردہ متغیرات کا وقعت فرق رکھتا ہے، لیکن وہ ایسا نہیں دوبارہ مقادیر دی دینا چاہئیے:
مثال
const PI = 3.141592653589793; PI = 3.14; // بنا میں خاطی میں آجائے گا PI = PI + 10; // بنا میں خاطی میں بھی آجائے گا
بلاک اسکوپ
میںبلاک اسکوپبلاک میں استعمال کیا جاتا ہے const
اعلان کردہ متغیر let
متغیر کچھ متلعصی کا حامل
اس مثال میں، ایکس بلاک میں اعلان کی گئی، یہ بلاک کے باہر کی اعلان کی گئی ایکس سے فرق رکھتا ہے:
مثال
var x = 10; // یہاں، ایکس 10 ہے { const x = 6; // یہاں، ایکس 6 ہے } // یہاں، ایکس 10 ہے
پچھلے چپ میں آپ نے جاوا اسکریپت لیٹ مدرسہ میں بلاک اسکوپ کا علم بڑھا
اعلان کے وقت مقادیر دی دینا چاہئیے
جاوا اسکریپٹ const
متغیر کو اعلان کے وقت مقادیر دی دینا چاہئیے:
غلط
const PI; PI = 3.14159265359;
درست
const PI = 3.14159265359;
صادقین کانستن نہیں ہیں
کلیدی الفاظ const
کچھ حیثیت میں گمراہ کردار ادا کرتا ہے。
یہ کانستن وقعت کا معاملہ نہیں دیتا، وہ وقعت کی کانستن رجوع دیتا ہے。
اس لئے، آپ کانستن بنیادی وقعت بدل نہیں سکتے، لیکن آپ کانستن آؤٹ پارٹ کی خاصتیز بدل سکتے ہیں。
بنیادی وقعت
اگر آپ ایک بنیادی وقعت کانستن کو دینا، تو آپ بنیادی وقعت بدل نہیں سکتے:
مثال
const PI = 3.141592653589793; PI = 3.14; // بنا میں خاطی میں آجائے گا PI = PI + 10; // بنا میں خاطی میں بھی آجائے گا
کانستن آؤٹ پارٹ بدل سکتا ہے:
آپ کانستن آؤٹ پارٹ کی خاصتیز بدل سکتے ہیں:
مثال
// آپ کانستن آؤٹ پارٹ کا تعین کرسکتے ہیں: const car = {type:"porsche", model:"911", color:"Black"}; // آپ کچھ خاصتیز بدل سکتے ہیں: car.color = "White"; // میتوانید ویژگی اضافه کنید: car.owner = "Bill";
اما نمیتوانید یک شیء متغیر را دوباره تخصیص دهید:
مثال
const car = {type:"porsche", model:"911", color:"Black"}; car = {type:"Volvo", model:"XC60", color:"White"}; // ERROR
آرایه متغیر میتواند تغییر کند
میتوانید عنصر آرایه متغیر را تغییر دهید:
مثال
// میتوانید یک آرایه متغیر ایجاد کنید: const cars = ["Audi", "BMW", "porsche"]; // میتوانید عنصر را تغییر دهید: cars[0] = "Honda"; // میتوانید عنصر اضافه کنید: cars.push("Volvo");
اما نمیتوانید یک آرایه متغیر را دوباره تخصیص دهید:
مثال
const cars = ["Audi", "BMW", "porsche"]; cars = ["Honda", "Toyota", "Volvo"]; // ERROR
پشتیبانی مرورگر
Internet Explorer 10 و نسخههای قبلی آن پشتیبانی نمیکنند const
واژههای کلیدی.
جدول زیر نسخههای مرورگر را نشان میدهد که اولین بار از کلید const پشتیبانی کردند:
Chrome 49 | IE / Edge 11 | Firefox 36 | Safari 10 | Opera 36 |
مارس 2016 | اکتبر 2013 | فوریه 2015 | سپتامبر 2016 | مارس 2016 |
تعریف مجدد
در هر نقطه از برنامه مجاز است که JavaScript را دوباره تعریف کنید var
متغیر:
مثال
var x = 2; // مجاز var x = 3; // مجاز x = 4; // مجاز
در یک محدوده یا بلوک عملی، مجاز نیست که یک متغیر موجود را دوباره تعریف یا تخصیص دهیم: var
یا let
متغیر را دوباره تعریف یا تخصیص دهید به const
:
مثال
var x = 2; // مجاز const x = 2; // نا允许 { let x = 2; // مجاز const x = 2; // نا允许 }
در یک محدوده یا بلوک عملی، مجاز نیست که یک متغیر const را دوباره تعریف یا تخصیص دهیم:
مثال
const x = 2; // مجاز const x = 3; // نا允许 x = 3; // نا允许 var x = 3; // نا允许 let x = 3; // نا允许 { const x = 2; // مجاز const x = 3; // مجاز نیست x = 3; // مجاز نیست var x = 3; // مجاز نیست let x = 3; // مجاز نیست }
در حوزه یا بلوک دیگری دوباره تعریف شوند const
این مجاز است:
مثال
const x = 2; // مجاز { const x = 3; // مجاز } { const x = 4; // مجاز }
بلند شدن
از طریق var
متغیرهایی که تعریف شدهاندبلند شدنبه بالا بلند میشوند. اگر با مفهوم بلند شدن (Hoisting) آشنا نیستید، این فصل را مطالعه کنید.
شما میتوانید از متغیر var قبل از تعریف آن استفاده کنید:
مثال
carName = "Volvo"; // شما میتوانید در اینجا از carName استفاده کنید var carName;
از طریق const
متغیرهایی که تعریف شدهاند به بالا بلند نمیشوند.
const
متغیرها نمیتوانند قبل از تعریف از خودشان استفاده شوند:
مثال
carName = "Volvo"; // شما نمیتوانید در اینجا از carName استفاده کنید const carName = "Volvo";
- صفحه قبلی JS Let
- صفحه بعدی آپراتورهای JS