بیایید برخی از اصول اصلی JavaScript را بیاموزیم که یک توسعه دهنده باید بداند. این زبان برنامه نویسی تفسیر شده به طور گسترده ای برای توسعه برنامه های سطح شرکت استفاده می شود.
بررسی اجمالی
JavaScript یک زبان برنامه نویسی است که برای توسعه برنامه های مبتنی بر وب پویا استفاده می شود. ما از HTML و CSS برای ساخت وب سایت های استاتیک استفاده می کنیم در حالی که JavaScript برای افزودن تعامل استفاده می شود. در پست وبلاگ قبلی ما ، مدل شیء سند را پوشش دادیم و اکنون برخی از مفاهیم مهم JavaScript را پوشش خواهیم داد**. توسعه دهندگان وب به دلیل ویژگی ها و چارچوب های غنی خود تمایل به انتخاب این زبان اسکریپت دارند. علاوه بر این ، شما می توانید با یادگیری JavaScript در انتهای جلو و انتهای جلو انجام دهید. با این حال ، شما فقط نمی توانید برنامه های وب بلکه برنامه های تلفن همراه را نیز تهیه کنید. اگر خود را برای یک جلسه مصاحبه آماده می کنید ، این آموزش JavaScript به شما کمک می کند. با این وجود ، این راهنما ارزش خواندن دارد تا بیشتر به سطل دانش شما اضافه شود. ما در این مقاله نکات زیر را پوشش خواهیم داد:
آنچه در جاوا اسکریپت بالا می رود
پدیده گرفتن عملکرد یا اعلامیه متغیر در بالای دامنه فعلی به عنوان بالا بردن شناخته می شود. این یک مفهوم بسیار مهم است و بیشتر توسعه دهندگان جاوا اسکریپت از آن آگاه نیستند. با این حال ، نکته مهمی که باید در اینجا توجه داشته باشید این است که فقط اعلامیه های عملکرد/متغیر به بالا منتقل می شوند ، نه اولیه سازی عملکرد/متغیر. بیایید یک مثال بزنیم و قطعه کد را در زیر مشاهده کنیم.
printResults();
function printResults(){
console.log("hello programmers")
}
// output: hello programmers
در مثال کد فوق ، ما قبل از اعلام عملکرد ، تماس عملکرد را انجام دادیم اما حتی اگر کد با موفقیت اجرا شود و این به دلیل بالا بردن جاوا اسکریپت است. در اصل ، در طول زمان کامپایل ، مترجم JavaScript کد را اسکن می کند ، تمام توابع/متغیرها را جمع می کند و آنها را به نام محیط واژگانی قرار می دهد. همین اتفاق با متغیرها رخ می دهد.
name = "mustafa";
console.log(name);
var name;
به طور مشابه ، اولیه سازی متغیر نام قبل از اعلام آن انجام شده است و کد بدون هیچ گونه خطایی کار می کند. باز هم ، در زمان کامپایل ، مترجم JS برای یافتن اعلامیه متغیر به محیط واژگانی نگاه کرد و از این رو کد را اجرا کرد. بنابراین ، اگر متغیرهایی را با کلمات کلیدی let و const اعلام کنید ، JavaScript آنها را کمی متفاوت بلند می کند.
name = "mustafa";
console.log(name);
let name;
// Uncaught ReferenceError: Cannot access 'name' before initialization
خطای موجود در قطعه کد فوق رخ داده است. دلیل این امر این است که اولیه سازی هنگام بلند کردن این متغیر انجام نشده است. داستان کوتاه ، همه اعلامیه ها با “تعریف نشده” آغاز می شوند در حالی که متغیرهای اعلام شده با “اجازه” یا “const” در بالا بردن آغاز نمی شوند.
دامنه در جاوا اسکریپت
دامنه یکی از مفاهیم اساسی JavaScript است که یک توسعه دهنده باید آن را بداند. با این حال ، کار با Scopes JavaScript ساده نیست و کمی متفاوت است. بنابراین ، سه نوع دامنه در جاوا اسکریپت وجود دارد و این موارد به شرح زیر است: سطح بلوک : متغیرهای اعلام شده با “اجازه” یا “const” حاوی دامنه سطح بلوک هستند.
if(true){
let a = 1;
}
// a is not accessible outside the curly braces.
متغیر “A” در خارج از بریس های فرفری قابل دسترسی نیست زیرا دامنه سطح بلوک دارد. سطح عملکرد : متغیرهای اعلام شده در عملکرد JavaScript دامنه محلی دارند.
function innerFunc(){
let last_name = "ashraf";
console.log("hello "+last_name);
}
// last_name is not accessible outside the function.
نکته مهمی که باید در اینجا توجه داشته باشید این است که متغیرهای اعلام شده با “اجازه” “const” و “var” دامنه عملکرد را در بدن عملکرد دارند. سطح جهانی : متغیرهای اعلام شده در خارج از عملکرد متغیرهای جهانی می شوند. مهم نیست که آنها آنها را با استفاده از کلمات کلیدی “LET” ، “CONST” یا “VAR” اعلام کرده اید. علاوه بر این ، اگر بدون استفاده از هر کلمه کلیدی همانطور که در قطعه کد زیر نشان داده شده است ، یک متغیر به یک متغیر جهانی تبدیل شود:
function innerFunc(){
last_name = "ashraf";
console.log("hello "+last_name);
}
// last_name is accessible outside the function too and is of global scope
بسته شدن جاوا اسکریپت
این یکی دیگر از مفهوم مهم است که دانش جاوا اسکریپت شما را در مورد دامنه ها و محاصره داده ها تقویت می کند. در ساده ترین شکل ، یک عملکرد در داخل یک تابع به عنوان بسته شدن شناخته می شود. ممکن است عملکرد داخلی را بسته بندی کنید. این عملکرد داخلی سه نوع دامنه دارد:
- دامنه سطح بلوک خاص خود را دارد.
- به متغیرهای والدین دسترسی دارد.
- متغیرهای موجود در دامنه جهانی نیز در داخل بسته شدن قابل دسترسی هستند. بیایید ببینیم چگونه می توان بسته شد:
function myFunction(){
let first_name = "mustafa";
function innerFunc(){
let last_name = "ashraf";
console.log("hello "+first_name+" "+last_name);
}
return innerFunc()
}
myFunction()
// output: hello mustafa ashraf
متغیر first_name در داخل تابعی که به نام innerfunc نامیده می شود قابل دسترسی است اما عملکرد والدین نمی تواند به متغیر last_name دسترسی داشته باشد. این رفتار به برنامه نویسان اجازه می دهد تا متغیرهای خصوصی را در زنجیره دامنه ایجاد کنند.
نتیجه
ما در اینجا به این راهنمای JavaScript پایان می دهیم و امیدواریم که درک بهتری از مفاهیم اساسی JavaScript داشته باشید. علاوه بر این ، ما همچنین بسته های جاوا اسکریپت ، دامنه های جاوا اسکریپت و بلند کردن را طی کرده ایم. بسیاری از مفاهیم مهم دیگر وجود دارد که برای مبتدیان اجباری است. بنابراین ، این مقاله به شما کمک می کند اگر در حال پیشرفت یا تازه کردن مفاهیم JavaScript خود هستید. علاوه بر این ، شما ممکن است پست های وبلاگ ذکر شده در بخش “ببینید همچنین” را طی کنید.
با ما ارتباط برقرار کنید
سرانجام ، Containerize.com آموزش های جاوای اسکریپت مداوم را در مورد موضوعات مختلف هیجان انگیز ارائه می دهد. شما می توانید با دنبال کردن ما در سیستم عامل های رسانه های اجتماعی ما ، از جمله Facebook ، LinkedIn و توییتر در حلقه بمانید.
سوالی بپرسید
شما می توانید در مورد سوالات یا سؤالات خود در مورد انجمن به ما اطلاع دهید.
سؤالات متداول
مفاهیم مهم برای یادگیری در JavaScript چیست؟ لطفاً برای دانستن مفاهیم اساسی JavaScript این جاوا اسکریپت مبتدی 2 را دنبال کنید.
همچنین ببینید
- DOM در JavaScript چیست؟ | مدل شیء سند
- قول در جاوا اسکریپت چیست؟ | آموزش JavaScript
- محاسبات بدون سرور چیست؟ | معماری بدون سرور
- چندتایی چیست؟ | چرا یک رویکرد چند مستاجر؟
- AI تولیدی چیست | هوش مصنوعی تولیدی
- Async در JavaScript در انتظار چیست؟ | راهنمای جاوا اسکریپت
- نحوه استفاده از ChatGPT در VScode | کد پسوند vScode GPT
- OpenAi Chatbot GPT-3 چیست | chatgpt یک انقلاب ai
- مقدمه ای بر هوش مصنوعی | AI چیست؟
- Async در JavaScript در انتظار چیست؟ | راهنمای جاوا اسکریپت