February 21, 2022

suhbatdagi savollarga javoblar

arr.find() shartni qanoatlantiruvchi birinchi qiymatni qaytaradi

arr.filter(item=>item>2) shartni qanoatlantiruvchi barcha qiymatlarni massiv ichida qaytaradi

arr.map() massivning har bir elementi uchun funksiyani chaqiradi va natijalarni massiv ichida qaytaradi.

array.forEach(function(){}) massivni aylanib chiqadi . mapdan farqi bu qiymat qaytarmaydi faqat ayalanib chiqadi

array.flat() massivni ichida massiv bolsa shuni bitta massiv qilib beradi faqatgina 1ta childni massivdan chiqaza oladi ECMAScript 2019

array.flatMap() flat() va map() larni ozida birlashtirgan method ECMAScript 2019

array.from() kiritilgan qiymatni xar bir elementini alohida qilib massiv qilib beradi hammasini alohida alohida oqidi

array add/remove items

array.push() oxiriga qoshish

array.pop() oxiridan ochirish

array.shift() boshida ochirish

array.unshift() boshiga qoshish

delete arr[0] 0 chi elementni ochiradi ammo elementi joyi qoladi

splice(indexdan,nechta o`chirsin)

yana imkoniyatlar

splice(indexdan,ochirishlar soni,almashtirsh mumkin bolgan qiymat)

array.slice(indexdan,indexgacha) element faqat olib beradi ochirmidi

arr.concat(arr1,[1,2]) oxiridan boshlab massivlaarni yoki elementlarni qoshib boradi

array search === tenglik asosida qiymatni qidiradi

arr.indexOf(qiymat) qiymatga teng bolgan birinchi qiymatni indexni qaytaradi agar yo bolsa -1 qaytaradi

arr.lastIndexOf() eng songi qiymat indexisini qaytaradi

arr.includes(qiymat) qiymat bor yoqligini tekshiradi va bor bolsa true bolmasa false qaytaradi ECMAScript 2016

shu yerda etibor berish kk bolgan nuqta NaN uchun === tenglik ishlamaydii agar biz uni index sini kormoqchi bolsak bizga -1 yaniy topilmagan qiymat qaytaradi

lekin bor yoki yoqligini tekshirishda ishlaydi

const arr = [NaN];

alert( arr.indexOf(NaN) ); // -1 (should be 0, but === equality doesn't work for NaN)

alert( arr.includes(NaN) );// true (correct)

arr.reverse() teskarisiga yozib beradi

string.split('') natija massiv qaytargani uchun shu joyda

array.join('') splitga qarama -qarshi . massiv elementlarini string qilib beradi '' ichidagi asosida

array.reduce((avvalgiqiymat,hozirgiqiymat,index,array){amallar})

array.reduceRight() ongdan chapga qarab harakatlanadi

array.isArray() massiv lligini tekshiradi massiv bolsa true bolmasa false

syboll

id holatida beriladi user.id bu ozining id si user[id] syboll uning afzalligi 2lasiga ham bir xil qiymat berilganida ular bir xil qiymat qabul qimidi

let id = Symbol('id')

let id1 = Symbol('id')

( id==id1 ) => false

obj clone

{...ob1} , ES6

Object.assign({},ob1) ammo bu holatda agar obj ni ichida yana bitta obj ochib uni clonida yangi ochilgan obj ni ozgartirsak haqiqiyssi ham ozgarib ketadi bu faqat ozining qiymatlariga tasir qiladi keyin usul buni togrilidi

ob2=JSON.parse(JSON.stringigy(ob1)) va ob ichidagi obj clon da ozgartirilsa endi haqiqiysida ozgarmaydi

! JSON.stringigy() json farmatga aylantiradi JSON.parse() json farmatdan chiqazadi

obj={name:'Name',id:6}

q= Object.entires(obj) => [['name','Name'],["id","6"]]