JavaScript: Versiyalar orasidagi farq

512 bayt qoʻshildi ,  1 yil oldin
tahrir izohi yoʻq
(+)
Teglar: Mobil tahrirlash Mobil dastur orqali tahrirlash
Tahrir izohi yoʻq
| nomi = JavaScript
| tasvir = [[Fayl:Unofficial_JavaScript_logo_2.svg|center|150px]]
| introduced = {{start date and age|1995|12|4}}<ref name="press_release">[https://web.archive.org/web/20070916144913/http://wp.netscape.com/newsref/pr/newsrelease67.html Press release announcing JavaScript], "Netscape„Netscape and Sun announce JavaScript"JavaScript“, PR Newswire, December 4, 1995</ref>
| turi =
| maqomi =
| vebsayt =
| platforma =
}}'''Javascript'''<ref>{{cite web | url= http://dictionary.reference.com/browse/javascript | title= JavaScript | publisher= William Collins Sons & Co | work= Collins English Dictionary – Complete & Unabridged 2012 Digital Edition | date= 2012 | accessdate= 21 August 2015}}</ref> - — '''JS''' nomi bilan ham qisqartiriladigan [[ECMAScript]] spesifikatsiyasiga mos keladigan yuqori darajali hamda aniq talqin qilingan [[Dastur|dasturlash tili]].<ref name=tc39>{{Cite web|url=https://tc39.es/ecma262/#sec-overview|title=ECMAScript® 2020 Language Specification}}</ref><ref>{{cite web | url= http://dictionary.reference.com/browse/javascript | title= JavaScript | publisher= William Collins Sons & Co | work= Collins English Dictionary – Complete & Unabridged 2012 Digital Edition | date= 2012 | accessdate= 21-avgust 2015}}</ref>
 
== Imkoniyatlari ==
Ushbu dastur Liveware Javascript tilining avlodi bo‘libboʻlib, Netscape serveri tomonidan ishlovchi vosita bo‘ladiboʻladi. Ammo Javascript tilini mashhur qilgan narsa bu xaridor tomonidan dasturlashdir. Javascriptning asosiy vazifasi — [[HTML]] konteynerlar atributlarining qiymatlarini va ko‘rsatuvchikoʻrsatuvchi muhitining xossalirini HTML sarlavhalarni ko‘rishkoʻrish jarayonida foydalanuvchi tomonidan o‘zgartirishoʻzgartirish imkoniyatlarida, boshqacha aytganda ularni dinamik sarlavhalar qilish (DHTML) tushuniladi. Yana shuni aytish joizki, sarlavhalar qayta yuklanmaydi. Amalda buni, masalan, quydagicha ifodalash mumkin, sarlavhaning fonining rangini yoki hujjatdagi [[rasm]]ni o‘zgartirishoʻzgartirish, yangi oyna ochish yoki ogohlantirish oynasini chiqarish.
 
„JavaScript“ nomi Netscape kompaniyasining xususiy maxsuloti hisoblanadi. [[Microsoft]] tomonidan amalga oshirilgan til rasman Jscript deb nomlanadi. Jscript versiyalari Javascriptning mos versiyalari bilan mos keladi (aniqroq qilib aytganda oxirigacha emas).
 
Javascript, ECMA (European Computer Manufacturers Association — EYropa Kompyuter Ishlab Chiqaruvchilar Assotsiyatsiyasi) tomonidan standartlashtirilgan. Mos standartlar quydagicha nomlanadi: ECMA-262 va ISO-16262. Ushbu standartlar bilan Javascript 1.1ga taqriban ekvivalent ECMAScript tili aniqlanadi. Eslatish joizki, bugungi kunda Javascript ning hamma versiyalari ham ECMA standartlariga mos kelavermaydi. Mazkur kurs yoki qo‘llanmadaqoʻllanmada barcha hollarda biz Javascript nomidan foydalanamiz.
 
== Xususiyatlari ==
Javascript, bu [[Internet]] uchun katta bo‘lmaganboʻlmagan xaridor va server ilovalarni yaratishga mo‘ljallanganmoʻljallangan nisbatan oddiy jismga yo‘naltirilganyoʻnaltirilgan til. Javascript tilida tuzilgan dasturlar HTML hujjatning ichiga joylashtirilib ular bilan birga uzatiladi. Kurish dasturlari (brauzerlar va hokazo) Netscape Navigator va Microsoft Internet Explorer hujjat matniga joylashtirilgan dasturlarni (Scriptkod) uzatishadi va bajarishadi.
Shunday qilib, Javascript — interpritatorli dasturlash tili hisoblanadi. Javascriptda tuzilgan dasturlarga foydalanuvchi tomonidan kiritilayotgan maʼlumotlarni tekshirayotgan yoki hujjatni ochganda yoki yopganda biror bir amallarni bajaruvchi dasturlar misol bo‘lishiboʻlishi mumkin.
 
JavaScriptʼda yaratilgan dasturlarga misol sifatida foydalanuvchi tomonidan kiritilgan maʼlumotlarni tekshiruvchi, hujjatni ochish yoki yopish vaqtida qandaydir amallarni bajaruvchi dasturlarni keltirish mumkin. Bunday dasturlar foydalanuvchi tomonidan berilgan ko‘rsatmalargakoʻrsatmalarga — sichqoncha tugmachasini bosilishiga, maʼlumotlarni ekran orqali kiritishiga yoki sichqonchani sahifa bo‘ylabboʻylab siljitilishiga ko‘rakoʻra ish bajaradi. Bundan tashqari JavaScript dagi dasturlar brauzerning olzini va hujjatning atributlarini ham boshqarishi mumkin.
 
JavaScript dasturlash tili sintaktik jihatdan Java dasturlash tiliga, jismli modellashni istisno qilgan holda, o‘xshaboʻxshab ketsada, lekin maʼlumotlarni statik turlari va qatʼiy tiplashtirish kabi xususiyatlarga ega bo‘lmaydiboʻlmaydi. JavaScript, Java dasturlash tilidan farq qilib, sinf tushunchasi bu tilning asosiy sintaktik qurilmasi hisoblanmaydi. Bunday asos sifatida foydalanilayotgan tizim tomonidan qolllab-quvvatlanayotgan, oldindan aniqlangan maʼlumot tiplari: sonli, mantiqiy va satrli; mustaqil ham bo‘lishiboʻlishi, jismning usuli sifatida ham ishlatilishi mumkin bollgan funksiyalar; katta sondagi uz xossalariga va usullariga ega bo‘lganboʻlgan, hamda oldindan aniqlangan jismlardan iborat jismli model va yana dastur ichida foydalanuvchi tomonidan yangi jismlarni berish qoidalari hisoblanadi.
JavaScriptʼda dasturlar yaratish uchun hech qanday qo‘shimchaqoʻshimcha vositalar kerak bo‘lmaydiboʻlmaydi, faqatgina tegishli versiyadagi JavaScript qo‘llanishiqoʻllanishi mumkin bo‘lganboʻlgan brauzer va DHTML hujjatlarni yaratishga imkon beruvchi matn muharriri kerak bo‘ladiboʻladi.<ref>{{cite web|title="JavaScript" dasturi va uning imkoniyatlari|url=http://tami.uz/matnga_qarang.php?id=438|accessdate=18-fevral, 2018}}</ref>
 
== Sintaksis ==
=== Oddiy mashqlarnamunalar ===
JavaScriptʼdaJavaScriptda o‘zgaruvchilarnioʻzgaruvchilarni <tt>var</tt>,<ref>{{cite web | url=https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Statements/var | title=var – JavaScript – MDN | publisher=The [[Mozilla Developer Network]] | accessdate=22 December 2012}}</ref> <tt>let</tt><ref name="moz_let">{{cite web |title=let |url=https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let |website=MDN web docs |publisher=Mozilla |accessdate=27 June 2018 |ref=moz_let}}</ref> yoki <tt>const</tt><ref name="moz_const">{{cite web |title=const |url=https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const |website=MDN web docs |publisher=Mozilla |accessdate=27 June 2018 |ref=moz_const}}</ref> kalitso‘zlarikalitsoʻzlari orqali qo‘yingqoʻying.
<syntaxhighlight lang="javascript">
var x; // declares the variable x and assigns to it the special value „undefined“ (not to be confused with an undefined value)
var z = "Hello, World!"; // declares the variable z and assigns to it a string containing „Hello, World!“
</syntaxhighlight>
 
<syntaxhighlight lang="javascript">
console.log(„Hello World!“);
</syntaxhighlight>
 
 
<syntaxhighlight lang="javascript">
function factorial(n) {
if (n === 0)
return 1; // 0! = 1
 
return n * factorial(n - 1);
}
 
factorial(3); // returns 6
</syntaxhighlight>
 
<syntaxhighlight lang="javascript">
function counter() {
let count = 0;
 
return function() {
return ++count;
};
}
 
let closure = counter();
closure(); // returns 1
closure(); // returns 2
closure(); // returns 3
</syntaxhighlight>
 
== Manbalar ==
{{manbalar}}