July 3, 2023

JavascriptΒ  Β LESSSON-2

Data type - ma'lummot turlari.

Ikki xil ma'lumot turlari bor:

1. Primative

2.Complex (reference deb nomlasak ham bo'ladi, va non-primative)

Primative'da 7 ta ma'lumot turi bor:
1.null

2.undefined

3.boolen (true, false)

4.number

5.string

6.symbol

7.bigint (2**53 and ...n);

| Null bu ham ma'lumot turi hisoblanadi xudding number, string kabi)

masalan:

let selected = null;
console.log(typeof selected);

bu holatta console'ga object chiqadi. (turi object hisoblanadi) Bu JS'ning bugi hisoblanadi.

| Boolen'ning ikkita qiymati bor true and false.

masalan:

let check = true;
console.log( typeof check);
let isPerson = false;
console.log( typeof isPesron);

bu boolen turidagi ma'lumot turi hisoblanadi shuning uchun console'ga bollen chiaqadi.

| Number'da infonity degan qiymat bor undan katta hech qanday qiymat yo'q.

console.log(Infinity, typeof Infinity);

Bunda qiymat infinity va uning turi number;

NaN - not a number bu ham bir qiymat hisoblanadi, son emas degan ma'noni bildiradi.

console.log(NaN, typeof NaN);

bunda console'ga NaN qiymat turi number bo'lib chiaqadi

float (e, 0.1 + 0.2) - dasturlash tilida nuqtali sonlar float deb ataladi.

masala:

 let float = 1.256;
 console.log(float, typeof float);

console'ga 1.256 qoiymat chiqadi, number turida)

number seperator ( _ ) - bu raqam yozayotganimizda o'qishga osonroq bo'lishi uchun foydalaniladi.

masala:

let bigNumber = 123_894_017;
console.log(bigNumber, typeof bigNumber);

console'ga qiymati bu seperatorsiz chiqadi 123894017. bu hech qayday qiymatni o'zgartirmaydi, yoki boshqa bir qo'shimcha narsa qo'shmaydi shunchaki sonni o'qishni osonlashtirish vazifasini bajaradi.

| String β€” string'ni hosil qilishda biz odatda duble quote ( "" ) foydalanamiz, lekin bu holatta ham ishlatsak bo'ladi ekin ularni hech qanday farqi yo'q.

  • single-quote - ’…’
  • double quote - β€œβ€¦β€
  • backticks - `...`

length β€” so'zning uzunligini hoisoblaychi masalan:

let fullName = "Aliyeva Jamila";
console.log(fullName.length);

bun holatta console'ga 14ta number chiqadi, stringda uni ichudagi so'zlar soni va space hisoblanadi holos)

| Symbol β€”

let symbol = Symbol();
console.log(typeof symbol);

| Bigint (2**53 and ...n);

agar biz son kiritayotganda 2 ni darajasi 53ga teng yoki katta son kiritadigan bo'lsak, bu son xato hisonblanadi va notogri hisob kitob qiladi.

let a = 482379798123219371n;
let b = 3247834892347384n;

console.log(2 ** 53 - 1);

console.log(2 ** 53 - 1); β€” bu JS'da ishlatiladigan eng katta son hisoblanadi.

 let a = 482379798123219371n;
 let b = 3247834892347384n;
 console.log(typeof a);
 console.log(typeof b);
 console.log(a + b);
 console.log(2 ** 53 - 1);

bu sonlarni togri hisob-kitob qilmoqchi bo'lsak, bigintga o'tkazisjhinmiz kerak shuning uchun sonlarni oldiga "n" qoyamiz. Shunda uniq qiymati to'g'ri hisoblanadi.

Complex'da 1ta:
object.

complex yuqoridagi 7 ta qiymatni ozida jamlab bitt qilib yoza oladi

let obj = {
 str: "Abdulaziz",
 groupNumber: 23,
 isDiplom: false, 
}

shung uchun ham complex β€” murakkab deyiladi.

OPERATORLAR

Arifmetik operatorlar

number+string = string

console.log(10 + 20 + "30");
console.log(10 + 20 + "30" + 40 + 50);
console.log(10 + 20 + "30" + (40 + 50));

num /*-str(num) = number

stringni ichida son bo'lsa, shunsagina numberga o'tkazadi.

agar "+" bo'lsa string bo'ladi.

console.log(12 / "3");
console.log(12 * "3");
console.log(12 - "3");

str(num)/*-str(num) = number

console.log("24" / "2");
console.log("24" * "2");
console.log("24" - "2");

others = NaN

//masala:
console.log("2abc" / 2);

O'zlashtirish operatorlari

= β€” x = y;

+= β€” x+ =y;

bunida oziga yangi qiymatnio'zlashitib oladi masalan

let a = 100;

a += 50

ani qiymati 150ga o'zgaradi. a oziga 50ni o'zlashtiradi

shunday boshqa shu kabi beriladigan qiymatlar ham o'zlashtirib ketaveradi.

-=

*=

/=

%=

daraja= (negadir daraja yozilsa yoq bo'lib ketti)

Taqqoslash opertaorlari

== - tengmi; === - bu ham tengligini ham turini aniqlaydi

!= β€” teng emas

!== not equal valu and not equal type;

> - katta ;

>= - katta yoki teng;

< - kichik;

<= - kichik yoki teng;

agar

console.log(false < true);

qilsak, true chiqadui chunki

console.log(false == 0); console.log(true == 1);

Extra:
JS string bilan numberni taqqoslayotganda,songa almashtiradi. Agar bo'sh string bo'lsa, 0 qabul qiladi. Son bo'lmagan string bo'lsa, NaN bo'ladi yoki False.

Logical operatorlari

Agar biz boolen turidan foydalanayotgan bo'lsak, loical operatorlaridan foydalanamiz.

&& - va; bu operator ikki tomoni true bo'lsagina true qiymat oladi agar False bo'lsa orasida False qiymat oladi.

|| β€” yoki; bu operator esa agar faqat false bo'lsa false qiymat qaytaradi, true aralashib qolsa, True qiymat qaytaradi

! β€” emas; bu operator true'ni false qiladi, false'ni true qiladi.

Swapping

let A = 10
let B = 20;
let K;
K = A;
A = B;
B = K;

Math

  • constants, properties
  • Math.E // returns Euler's number
  • Math.PI // returns PI
  • Math.SQRT2 // returns the square root of 2

bular console'da ozgarmaydigan qiymatlari hisoblanadi

methods

Math.round(x) β€” berigan qiymatga eng yaqin sonni yaxlitlab beradi, masalan 12,72345 bo'lsa, bu 13 boladi. agar 12,4567 bo'lsa, 12 ni chiqaradi console'ga. -12.35 bo'lsa, -12ni chiaqaradi

Math.ceil(x) β€” tom yani o'ng tomondagi son ceil 12 bn 13 bo'lsa 12 ceil β€” tom 13 floor hisoblanadi. agar -12,23 bolsa -12 chiqadi ceilga

Math.floor(x) β€” pol yani chap tomondagi son floo hisoblanadi. Floor 12,33455 kiritilsa, bunda qiymati 12 chiqadi

Math.trunc(x) β€” bu ozini butun sonini yaxlitlab beradi. Masalan 12,34566 kiritilsa, 12ni ozini chiqaradi

bular sonni yaxlitlash vazifasini bajaradi

Math.sign(x) β€” musbat bo'layotgan bo'lsa, bir qaytaradi, manfiy bo'lsa, -1 qaytaradi. 0 bo'lsa 0 chiqaradi console'ga.

Math.pow() β€” daraja degan ma'noni anglaytadi.

console.log(Math.pow(3,5)) bu 3**5 degani)

Math.sqrt() β€” kasrni bildiradi, CONSOLE.LOG(Math.sqt(9)) bolsa unda uning qiymati 3 chiaqadi

Math.abs() β€” modelni bildiradi, // console.log(Math.abs(-10)); //bunday holatta consolega -10 chiqadi.

agar 10ni ozi bolyatgan bolsa, 10ni ozi chiaqveradi.

abc'ni vazifasi, manfiy sonlarni musbat qilib berish

Math.min() β€” sonlarni ichidan eng minimalini chiqarib beradi masalan 5, 0, 6 (0 ) ni chiqarib beradi.

and

Math.max() β€” sonlarni ichidan eng maximalini chiqarib beradi 5, 0 , 6 (6 ) ni chiqarib beradi.

Random

  • returns a random number between 0 (inclusive), and 1 (exclusive) [0, 1)
  • Math.floor(Math.random() * (max - min) ) + min; [min, max)
  • Math.floor(Math.random() * (max - min + 1) ) + min; [min, max]