ΠœΠ°ΡΡΠΈΠ²Ρ‹ javascript: ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ массивов

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

15 ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами Π² JavaScript, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°Ρ‚ΡŒ Π² 2020 Π³ΠΎΠ΄Ρƒ / Π₯Π°Π±Ρ€

ΠŸΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠΉ Π½Π° сайтС dev.to. Автор: Ibrahima Ndaw.
ΠžΡ€ΠΈΠ³ΠΈΠ½Π°Π» ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π² авторском Π±Π»ΠΎΠ³Π΅.

Массив Π² JavaScript β€” это особая структура Π΄Π°Π½Π½Ρ‹Ρ…, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… элСмСнтов. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнных Π² Π½Π΅Π΅ свойств ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ, ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² соотвСтствии со своими потрСбностями. Π—Π½Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами Π² JavaScript ΠΏΠΎΠ΄Π½ΠΈΠΌΠ΅Ρ‚ ваши ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Π½Π°Π²Ρ‹ΠΊΠΈ Π² сфСрС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим 15 ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ Π±ΠΎΠ»Π΅Π΅ эффСктивно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с массивами Π² JavaScript.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² основном ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡƒΠΏΡ€ΠΎΡ‰Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая пСрСдаСтся Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

// Instead of using this way
myAwesomeArray.some(test => {
  if (test === "d") {
    return test
  }
})
// We'll use the shorter one
myAwesomeArray.some(test => test === "d")

1.

some() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ провСряСт, удовлСтворяСт Π»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ элСмСнт массива ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ, Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ Π² ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Он Π²Π΅Ρ€Π½Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
true
, Ссли хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ элСмСнт совпадСт с провСряСмой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false β€” Ссли Π½Π΅Ρ‚.

const myAwesomeArray = ["a", "b", "c", "d", "e"]
myAwesomeArray.some(test => test === "d")
//-------> Output : true

2. reduce()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая ΠΈΠΌΠ΅Π΅Ρ‚ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° аккумулятор ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Он примСняСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊ аккумулятору ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ массива, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

const myAwesomeArray = [1, 2, 3, 4, 5]
myAwesomeArray.reduce((total, value) => total * value)
// 1 * 2 * 3 * 4 * 5
//-------> Output = 120

3. every()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ провСряСт, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‚ Π»ΠΈ всС элСмСнты массива ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ, Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ Π² ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Он Π²Π΅Ρ€Π½Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Ссли ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт совпадСт с провСряСмой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false β€” Ссли Π½Π΅Ρ‚.

const myAwesomeArray = ["a", "b", "c", "d", "e"]
myAwesomeArray.every(test => test === "d")
//-------> Output : false
const myAwesomeArray2 = ["a", "a", "a", "a", "a"]
myAwesomeArray2.every(test => test === "a")
//-------> Output : true

4. map()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ создаСт Π½ΠΎΠ²Ρ‹ΠΉ массив с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π²Ρ‹Π·ΠΎΠ²Π° ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта массива. Он всСгда Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ количСство элСмСнтов.

const myAwesomeArray = [5, 4, 3, 2, 1]
myAwesomeArray.map(x => x * x)
//-------> Output : 25
//                  16
//                  9
//                  4
//                  1

5. flat()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° массив массивов ΠΈ сглаТиваСт Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ массивы Π² массив Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΎΠ΄Π½ΠΎΠ³ΠΎ уровня.

const myAwesomeArray = [[1, 2], [3, 4], 5]
myAwesomeArray.flat()
//-------> Output : [1, 2, 3, 4, 5]

6.

filter() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ массив, содСрТащий всС элСмСнты массива, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ функция Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π»Π°ΡΡŒ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π΅ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ true.

const myAwesomeArray = [
  { id: 1, name: "john" },
  { id: 2, name: "Ali" },
  { id: 3, name: "Mass" },
  { id: 4, name: "Mass" },
]
myAwesomeArray.filter(element => element.name === "Mass")
//-------> Output : 0:{id: 3, name: "Mass"},
//                  1:{id: 4, name: "Mass"}

7. forEach()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ примСняСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту массива.

const myAwesomeArray = [
  { id: 1, name: "john" },
  { id: 2, name: "Ali" },
  { id: 3, name: "Mass" },
]
myAwesomeArray.forEach(element => console.log(element.name))
//-------> Output : john
//                  Ali
//                  Mass

8. findIndex()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ Π² дальнСйшСм примСняСт Π΅Π΅ ΠΊ массиву.
Он Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ элСмСнта, Ссли элСмСнт удовлСтворяСт ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠΉ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. Если Π½Π΅ удовлСтворяСт, возвращаСтся –1.

const myAwesomeArray = [
  { id: 1, name: "john" },
  { id: 2, name: "Ali" },
  { id: 3, name: "Mass" },
]
myAwesomeArray.findIndex(element => element.id === 3)
//-------> Output : 2
myAwesomeArray.findIndex(element => element.id === 7)
//-------> Output : -1

9. find()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ Π² дальнСйшСм примСняСт Π΅Π΅ ΠΊ массиву. Он Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта, Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ Π² массивС, Ссли элСмСнт удовлСтворяСт ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΎΠ½ΠΎ возвращаСтся со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ undefined.

const myAwesomeArray = [
  { id: 1, name: "john" },
  { id: 2, name: "Ali" },
  { id: 3, name: "Mass" },
]
myAwesomeArray.find(element => element.id === 3)
//-------> Output : {id: 3, name: "Mass"}
myAwesomeArray.find(element => element.
id === 7) //-------> Output : undefined

10. sort()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Он сортируСт элСмСнты массива ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΡ….

const myAwesomeArray = [5, 4, 3, 2, 1]
// Sort from smallest to largest
myAwesomeArray.sort((a, b) => a - b)
//-------> Output : [1, 2, 3, 4, 5]
// Sort from largest to smallest
myAwesomeArray.sort((a, b) => b - a)
//-------> Output : [5, 4, 3, 2, 1]

11. concat()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ массива/значСния ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ массив.

const myAwesomeArray = [1, 2, 3, 4, 5]
const myAwesomeArray2 = [10, 20, 30, 40, 50]
myAwesomeArray.concat(myAwesomeArray2)
//-------> Output : [1, 2, 3, 4, 5, 10, 20, 30, 40, 50]

12. fill()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ заполняСт всС элСмСнты массива ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ, ΠΎΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ индСкса (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 0) Π΄ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ индСкса (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ array.length).

const myAwesomeArray = [1, 2, 3, 4, 5]
// The first argument (0) is the value
// The second argument (1) is the starting index
// The third argument (3) is the ending index
myAwesomeArray. fill(0, 1, 3)
//-------> Output : [1, 0, 0, 4, 5]

13. includes()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Ссли массив содСрТит ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ элСмСнт, ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false β€” Ссли Π½Π΅Ρ‚.

const myAwesomeArray = [1, 2, 3, 4, 5]
myAwesomeArray.includes(3)
//-------> Output : true
myAwesomeArray.includes(8)
//-------> Output : false

14. reverse()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ мСняСт порядок слСдования элСмСнтов Π² массивС Π½Π° ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт становится послСдним, Π° послСдний β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ.

const myAwesomeArray = ["e", "d", "c", "b", "a"]
myAwesomeArray.reverse()
//-------> Output : ['a', 'b', 'c', 'd', 'e']

15. flatMap()

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ примСняСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту массива, Π° Π·Π°Ρ‚Π΅ΠΌ сглаТиваСт Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Π½ΠΎΠ²Ρ‹ΠΉ массив. Он ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ flat() ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ map() Π² ΠΎΠ΄Π½Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.

const myAwesomeArray = [[1], [2], [3], [4], [5]]
myAwesomeArray.flatMap(arr => arr * 10)
//-------> Output : [10, 20, 30, 40, 50]
// With . flat() and .map()
myAwesomeArray.flat().map(arr => arr * 10)
//-------> Output : [10, 20, 30, 40, 50]

Π Π°Π±ΠΎΡ‚Π° с массивами Π² JavaScript – Π‘Π°Π·Π° Π·Π½Π°Π½ΠΈΠΉ Timeweb Community

Π’ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΡ€ΠΎΡˆΠ»Ρ‹Ρ… статСй я Ρ€Π°Π·Π±ΠΈΡ€Π°Π»Β Ρ€Π°Π±ΠΎΡ‚Ρƒ строк Π² JavaScript. Но что Ссли Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ нСсколько нСзависимых строк Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ с сохранСниСм порядка? На ΠΏΠΎΠΌΠΎΡ‰ΡŒΒ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΡΡ‚ массивы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² сСбС Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строки, Π½ΠΎ ΠΈ элСмСнты Π»ΡŽΠ±Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ².

ΠœΠ°ΡΡΠΈΠ²Ρ‹ Π² JavaScript ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой спископодобныС структуры, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для хранСния упорядочСнных Π΄Π°Π½Π½Ρ‹Ρ…. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ для хранСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… строк позволСно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Но Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅, Ссли ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ свой порядковый Π½ΠΎΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ.Β 

ΠœΠ°ΡΡΠΈΠ²Ρ‹ Π² JavaScript настроСны Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Они эффСктивнСС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с Π½ΠΈΠΌΠΈ ΠΊΠ°ΠΊ с упорядочСнными списками Π΄Π°Π½Π½Ρ‹Ρ…. Но Ссли ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ массив ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Ρ‚ΠΎ ΠΎΠ½ ΡƒΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ свою ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΄Π²ΠΈΠΆΠΎΠΊ JavaScript ΠΏΠΎΠΉΠΌΠ΅Ρ‚ это, ΠΈ способы ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ для массивов Π±ΡƒΠ΄ΡƒΡ‚ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ массивы для хранСния ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… упорядочСнных Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ссли Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠ»ΡŽΡ‡ΠΈ, Ρ‚ΠΎ Ρ‚ΡƒΡ‚ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΏΡ€ΠΈΠ΄ΡƒΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ массивов Π² JavaScript ΠΈ основныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с Π½ΠΈΠΌΠΈ

Для Π½Π°Ρ‡Π°Π»Π° Π΄Π°Π²Π°ΠΉΡ‚Π΅ создадим пустой массив Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ двумя способами:

let mas =  new Array()

ΠΈΠ»ΠΈ

let mas = []

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ массив с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ строковыми значСниями. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π²Ρ‚ΠΎΡ€ΠΎΠΉ способ создания пустого массива, Π° Π² скобках ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ эти значСния, пСрСчисляя ΠΈΡ… Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ, Π½Π΅ забывая ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ элСмСнты массива ΠΏΠΎ порядковому Π½ΠΎΠΌΠ΅Ρ€Ρƒ. Для этого Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ имя массива ΠΈ порядковый Π½ΠΎΠΌΠ΅Ρ€ элСмСнта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ вывСсти Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках (счСт порядка элСмСнтов ΠΈΠ΄Π΅Ρ‚ с 0, поэтому для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ 0, для Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ 1 ΠΈ Ρ‚Π°ΠΊ далСС…). ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
console.log(mas[0]) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ β€œΠΌΡ‹ΡˆΠΊΠ°β€
console.log(mas[1]) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€
console.log(mas[2]) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€

Массив ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π² сСбС элСмСнты любого Ρ‚ΠΈΠΏΠ°. НапримСр:

let mas = [true, function() { console.log(mas) }, { arr: β€œΠ­Ρ‚ΠΎ элСмСнт массива” }]
console.log(mas[0]) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ true
mas[1] //Выполнится функция, Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ массив
console.log(mas[2].arr) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ β€œΠ­Ρ‚ΠΎ элСмСнт массива”

Но ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡŽΡΡŒ, Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ массивы для хранСния ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Π’Π°ΠΊ ΠΊΠ°ΠΊ массивы ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π² сСбС элСмСнты любого Ρ‚ΠΈΠΏΠ°, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΈ массивы Π² Π΄Ρ€ΡƒΠ³ΠΈΡ…. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [[1, 2], [3, 4] ,[5, 6]]
console.log(mas[0][1])//Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ 1

Рассмотрим ΠΎΠ΄ΠΈΠ½ ΠΈΠ· способов добавлСния элСмСнта Π² массив. Он ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΏΡ€ΠΈ условии Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ порядковоС мСсто, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π² скобках, Π½Π΅ занято, ΠΈΠ½Π°Ρ‡Π΅ Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ старый. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
mas[3] = β€œΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€ //ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌ [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€, β€œΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€]

Как ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, такая опСрация ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнт массива.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
mas[2] = β€œΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€ //ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌ [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€]

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ элСмСнтов ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства length. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
console.log(mas.length) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ 3

По ΠΏΡ€Π°Π²Π΄Π΅ говоря, свойство length Π½Π΅ всСгда ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ количСство элСмСнтов. Оно ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ массива, Π½ΠΎ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² массивах могут Π±Ρ‹Ρ‚ΡŒ пропуски, Π΄Π°Π½Π½ΠΎΠ΅ свойство Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ порядковый Π½ΠΎΠΌΠ΅Ρ€ послСднСго элСмСнта ΠΈ прибавляСт ΠΊ Π½Π΅ΠΌΡƒ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ.

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

let mas = []
mas[99] = β€œΠΌΡ‹ΡˆΠΊΠ°β€
console.log(mas.length)//Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ 100

Π’ Π΄Π°Π½Π½ΠΎΠΌ массивС всСго один элСмСнт, Π½ΠΎ свойство length Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ число 100.Β ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π² JavaScript массивы с пустыми мСстами Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚.

Π’Π°ΠΊΠΆΠ΅ Π΄Π°Π½Π½ΠΎΠ΅ свойство позволяСт ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ массива, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΡΡ€Π΅Π·Π°Ρ‚ΡŒ элСмСнты с ΠΊΠΎΠ½Ρ†Π°. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
mas. length = 2
console.log(mas)//Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€]

ΠŸΠ΅Ρ€Π΅Π±ΠΎΡ€ массива ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ†ΠΈΠΊΠ»Π° for. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:Β 

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
for (let elem of mas) {
     console.log(elem)
}
//Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ β€œΠΌΡ‹ΡˆΠΊΠ°β€
//        β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€
//        β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€

ΠšΠΎΠΌΡŒΡŽΠ½ΠΈΡ‚ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π² Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌ

ΠŸΠΎΠ΄ΠΏΠΈΡˆΠΈΡ‚Π΅ΡΡŒ ΠΈ Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π² курсС послСдних IT-новостСй

ΠŸΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами

Для удалСния послСднСго элСмСнта массива ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ pop. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
console.log(mas.pop()) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ удаляСмый элСмСнт, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€
console.log(mas) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€]

Для добавлСния элСмСнта Π² ΠΊΠΎΠ½Π΅Ρ† массива ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ push. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
mas.push( β€œΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€)
console.log(mas) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€, β€œΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€]

Для удалСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта массива ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ shift. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
console.log(mas.shift()) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ удаляСмый элСмСнт, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ β€œΠΌΡ‹ΡˆΠΊΠ°β€
console.log(mas) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ [β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]

Для добавлСния элСмСнта Π² Π½Π°Ρ‡Π°Π»ΠΎ массива ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ unshift. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
mas.shift( β€œΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€)
console.log(mas) //Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ [β€œΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€, β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]

Из-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ push/pop Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ смСщСния порядка элСмСнтов массива, ΠΎΠ½ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ быстрСС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² shift/unshift. ОсобСнно это Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ массивов с большим количСством элСмСнтов.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° toString ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ всС элСмСнты Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ массива Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ Π² Π²ΠΈΠ΄Π΅ строки. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

let mas = [β€œΠΌΡ‹ΡˆΠΊΠ°β€, β€œΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°β€, β€œΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€β€]
console.log(mas.toString())//Π’Ρ‹Π²Π΅Π΄Π΅Ρ‚ β€œΠΌΡ‹ΡˆΠΊΠ°,ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°,монитор”

Π˜Ρ‚ΠΎΠ³

ΠœΡ‹ ΡƒΠ·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ такоС массивы Π² JavaScript,Β ΠΈ Π½Π°ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠΌΠΈ. НадСюсь, эта ΡΡ‚Π°Ρ‚ΡŒΡ Π±Ρ‹Π»Π° ΠΏΠΎΠ»Π΅Π·Π½Π° для вас.Β Π£Π΄Π°Ρ‡ΠΈ!

быстрых совСтов ΠΏΠΎ ΡƒΡΠΊΠΎΡ€Π΅Π½ΠΈΡŽ этих массивов JavaScript | ДэниСл ЛСмпСсис

ΠšΡ€Π°Ρ‚ΠΊΠΈΠ΅ совСты ΠΏΠΎ ΡƒΡΠΊΠΎΡ€Π΅Π½ΠΈΡŽ этих массивов JavaScript | Π”Π°Π½ΠΈΡΠ»ΡŒ ЛСмпСсис | Medium Π§Ρ‚Π΅Π½ΠΈΠ΅: 4 ΠΌΠΈΠ½.

Β·

10 июля 2018 г.

ΠœΠ°ΡΡΠΈΠ²Ρ‹: ΠΎΠ½ΠΈ содСрТат всС, ΠΎΡ‚ строк ΠΈ Ρ†Π΅Π»Ρ‹Ρ… чисСл Π΄ΠΎ логичСских Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ скотча. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΈΡ… ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дСнь для хранСния Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π²Π°ΠΆΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ.

Они проиндСксированы, с Π½ΠΈΠΌΠΈ Π»Π΅Π³ΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, быстро Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ β€” ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ , ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ , ...Ρ€Π°ΡΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ , ΡΡ€Π°Ρ‰ΠΈΠ²Π°Ρ‚ΡŒ , Π½Π°Ρ€Π΅Π·Π°Ρ‚ΡŒ ΠΈ Π΄Π°ΠΆΠ΅ Π½Π°Ρ€Π΅Π·Π°Ρ‚ΡŒ ΠΈΡ… ΠΊΡƒΠ±ΠΈΠΊΠ°ΠΌΠΈ. (Π Π°Π΄ΠΈ ТСлания ΠΈΠΌΠ΅Ρ‚ΡŒ Β«Π»ΠΎΠΌΡ‚ΠΈΠΊΠΈΒ» ΠΈ «кости»…

Автор Daniel Lempesis

278 ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ

Π•Ρ‰Π΅ ΠΎΡ‚ Daniel Lempesis

Daniel Lempesis 900 03

Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΠΊΠΎΠ΄: ПолноС руководство, Ρ‡Π°ΡΡ‚ΡŒ I

НаписаниС Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ, Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° скучно.

Никто Π½Π΅ Ρ…ΠΎΡ‡Π΅Ρ‚ этим Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ, ΠΌΡ‹ всС просто Π΄ΠΎΠ»ΠΆΠ½Ρ‹ это Π΄Π΅Π»Π°Ρ‚ΡŒ. Π’Π°ΠΊΠΈΠ΅ языки, ΠΊΠ°ΠΊ Python, Π΄Π°ΠΆΠ΅ Π²Ρ‹ΡˆΠ»ΠΈ из…

8 ΠΌΠΈΠ½ΡƒΡ‚ чтСния·15 июля 2018 Π³.

Daniel Lempesis

УскорСниС вашСго прилоТСния Ruby on Rails

Π˜Π½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ, сТатиС, активная Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°, отлоТСнная Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°, Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π½Π° страницы, Turbo ссылки ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

Β·14 min readΒ·23 фСвраля 2019 Π³.

Daniel Lempesis

БыстроС ΠΈ простоС ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ тСстированиС JavaScript

НСбольшоС ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Ρ€Π°Π·Π½Ρ‹Π΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π΄Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π΄Π°ΠΆΠ΅ Π½Π° ΠΎΠ΄Π½ΠΈΡ… ΠΈ Ρ‚Π΅Ρ… ΠΆΠ΅ ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…. Π’ΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ кода…

5 ΠΌΠΈΠ½ΡƒΡ‚ чтСния·25 июня 2018 Π³.

Daniel Lempesis

in

Π‘ΡƒΠ΄ΡƒΡ‰Π΅Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅

WebP, AVIF, JPEG -XT

Β· Π§Ρ‚Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· 4 ΠΌΠΈΠ½ Β· 9 августа , 2020

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС ΠΎΡ‚ Даниэля ЛСмпСзиса

Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½ΠΎ Π½Π° Medium

НСдостойно

10 сСкунд, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈΡΡŒ ΠΌΠΎΠΈΠΌ 20-Π»Π΅Ρ‚Π½ΠΈΠΌ Π±Ρ€Π°ΠΊΠΎΠΌ

Август Π² Π‘Π΅Π²Π΅Ρ€Π½ΠΎΠΉ Π”Π΅Π²Π΅ ΠΌ.

, ΠΆΠ°Ρ€ΠΊΠΎ ΠΈ Π²Π»Π°ΠΆΠ½ΠΎ. Π― Π΄ΠΎ сих ΠΏΠΎΡ€ Π½Π΅ принял Π΄ΡƒΡˆ послС ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ ΠΏΡ€ΠΎΠ±Π΅ΠΆΠΊΠΈ. Π― Π½ΠΎΡˆΡƒ свою домохозяйку…

Β·4 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ чтСния·16 фСвраля 2022 Π³.

Π”Π½Π΅Π²Π½ΠΈΠΊΠΈ кодирования

Π²

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ программисты тСрпят Π½Π΅ΡƒΠ΄Π°Ρ‡Ρƒ Π½Π° собСсСдованиях ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ

Мой Π΄Ρ€ΡƒΠ³ Π½Π΅Π΄Π°Π²Π½ΠΎ присоСдинился ΠΊ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ FAANG Π² качСствС тСхничСского ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ», Ρ‡Ρ‚ΠΎ Π² долТности Ρ€Π΅ΠΊΡ€ΡƒΡ‚Π΅Ρ€Π° для…

Β·5 ΠΌΠΈΠ½ чтСния·2 ноября 2022 Π³.

Бписки

Π˜ΡΡ‚ΠΎΡ€ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π²Π°ΠΌ расти ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

19 историй·156 сохранСний

ΠžΠ±Ρ‰ΠΈΠ΅ знания Π² области кодирования

20 историй·41 сохранСниС

Руководство ΠΏΠΎ Π²Ρ‹Π±ΠΎΡ€Ρƒ, ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ Π΄ΠΎΡΡ‚ΠΈΠΆΠ΅Π½ΠΈΡŽ Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ

13 историй·199 сохранСний

Tech & Tools

15 историй·7 сохранСний

Love Sharma 90 003

Π²

БистСма План проСктирования: ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ, ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ ΠΈ эффСктивной систСмы ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒβ€¦

Β·Π§Ρ‚Π΅Π½ΠΈΠ΅ Π·Π° 9 ΠΌΠΈΠ½Β·Apr 20

JP Brown

Π§Ρ‚ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ происходит с чСловСчСским Ρ‚Π΅Π»ΠΎΠΌ Π½Π° Π³Π»ΡƒΠ±ΠΈΠ½Π°Ρ… Π’ΠΈΡ‚Π°Π½ΠΈΠΊΠ°

ΠœΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡƒΠ½Π΄Π½ΠΎΠ΅ объяснСниС

Β·Π§Ρ‚Π΅Π½ΠΈΠ΅ Π·Π° 4 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹Β·22 июня

9 0004 Π”ΠΆΠ΅ΠΉΠΊΠΎΠ± Π‘Π΅Π½Π½Π΅Ρ‚Ρ‚

Π²

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Git ΠΊΠ°ΠΊ ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€

Git β€” это ΠΌΠΎΡ‰Π½Ρ‹ΠΉ инструмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ приятно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Β·4 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ чтСния·15 ноября 2022 Π³.

The PyCoach

Π²

Π’Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ChatGPT Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ! Π’ΠΎΡ‚ ΠΊΠ°ΠΊ Π±Ρ‹Ρ‚ΡŒ Π²ΠΏΠ΅Ρ€Π΅Π΄ΠΈ 99% ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ChatGPT

ΠžΡΠ²ΠΎΠΉΡ‚Π΅ ChatGPT, ΠΈΠ·ΡƒΡ‡ΠΈΠ² Ρ‚Π΅Ρ…Π½ΠΈΠΊΡƒ быстрого доступа.

Β·7 ΠΌΠΈΠ½ чтСния·17 ΠΌΠ°Ρ€Ρ‚Π°

Π‘ΠΌ. Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ

Бтатус

ΠšΠ°Ρ€ΡŒΠ΅Ρ€Π°

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ тСкста Π² Ρ€Π΅Ρ‡ΡŒ

Массив Javascript (с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ) — Π’Π΅ΠΌΡ‹ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ

9019 4 ΠžΠ±Π·ΠΎΡ€

JavaScript ΠœΠ°ΡΡΠΈΠ²Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π½Π°Π±ΠΎΡ€ элСмСнтов ( ΠΈΠ»ΠΈ элСмСнты), хранящиСся ΠΏΠΎΠ΄ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

Π­Ρ‚ΠΎ просто ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ нСсколько элСмСнтов Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ массивы Π² JavaScript. ΠœΠ°ΡΡΠΈΠ²Ρ‹ Π² JavaScript ΠΌΠΎΠ³ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ элСмСнты, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ Π»ΡŽΠ±ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ этому Π² JavaScript сущСствуСт мноТСство ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² массивов, ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρƒ с массивами JavaScript.

Π”Π°Π²Π°ΠΉΡ‚Π΅ углубимся Π² ΠΌΠΈΡ€ массивов Π² JavaScript.

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² массивы JavaScript

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с массивами, Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ Π½ΡƒΠΆΠ½Ρ‹. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ мСня Π΅ΡΡ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ сотрудника, Ρ‡ΡŒΠΈ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρ‹:

Π’Ρ‹Ρ…ΠΎΠ΄:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π²ΠΎΠΈΡ‚ΡŒ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ сотрудника, я Π΄ΠΎΠ»ΠΆΠ΅Π½ явно ΡƒΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… Π½Π° 2:

Π’Ρ‹Ρ…ΠΎΠ΄: 90 003

ΠœΡ‹ написали ΠΊΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‡Ρ‚ΠΎ довольно скучно ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄. А Ссли Ρƒ нас тысяча сотрудников? Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ лихорадочная Π·Π°Π΄Π°Ρ‡Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, Π·Π°Ρ‚Π΅ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Π½Π΅ΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ процСсс. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π±Π΅Π· написания ΠΊΠΎΠ΄Π° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ИмСнно здСсь Π½Π° сцСну выходят массивы JavaScript.

ΠœΠ°ΡΡΠΈΠ²Ρ‹ JavaScript β€” это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ нСсколько элСмСнтов (ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ) нСзависимо ΠΎΡ‚ ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. На самом Π΄Π΅Π»Π΅, массивы Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ способ хранСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΎΠ½ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ способ случайного доступа ΠΊ Π½ΠΈΠΌ Π² постоянноС врСмя (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ врСмСнная ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ O(1)O(1)O(1)).

Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… языках программирования ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ нСсколько элСмСнтов Π² массивах, Π½ΠΎ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ массива со строковыми значСниями. Но Π² JavaScript Ρƒ нас Π΅ΡΡ‚ΡŒ свобода хранСния Π»ΡŽΠ±Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π² массивС, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ число, строка, ноль, Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ массив, ΠΌΠΎΠΆΠ΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ массива.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт массива ΠΈΠΌΠ΅Π΅Ρ‚ связанный с Π½ΠΈΠΌ индСкс. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ элСмСнту Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΅Π³ΠΎ индСкс. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»Π°Ρ….

ОбъявлСниС массива JavaScript

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ массивы JavaScript. БущСствуСт Π΄Π²Π° способа объявлСния массива JavaScript.

ИспользованиС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° массива JavaScript

Π›ΠΈΡ‚Π΅Ρ€Π°Π» массива позволяСт Π½Π°ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ элСмСнты, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ запятой ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки. Π­Ρ‚ΠΎ простой ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ способ объявлСния массивов JavaScript.

НапримСр:

Π’Ρ‹Π²ΠΎΠ΄:

ИспользованиС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова JavaScript new (конструктор массива)

Как ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, массивы ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π² JavaScript; ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ½ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ созданы с использованиСм Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: РСкомСндуСтся ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ объявлСния массивов с использованиСм Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова, насколько это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ массивы с использованиСм Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° массива, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ способ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ конструктор массива, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ способ массива быстрСС Π° Ρ‚Π°ΠΊΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Π² консоли.

НапримСр, ,

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ² для ΠΎΠ±ΠΎΠΈΡ… способов.
Π’Ρ‹Π²ΠΎΠ΄:

ΠžΠ±Ρ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ массива JavaScript

JavaScript прСдоставляСт нСсколько ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с массивами. Π”Π°Π²Π°ΠΉΡ‚Π΅ обсудим ΠΈΡ… ΠΎΠ΄ΠΈΠ½ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ.

БозданиС массива

Как ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, массивы ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ двумя способами, Π½ΠΎ Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ являСтся ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. Π˜Ρ‚Π°ΠΊ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ создадим массив, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива:

Π’Ρ‹Π²ΠΎΠ΄:

Доступ ΠΊ элСмСнту массива с использованиСм индСкса ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ

ВсС элСмСнты массива ΡΠ²Π»ΡΡŽΡ‚ΡΡ индСксированными , Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт массива Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ индСкс, основанный Π½Π° Π΅Π³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΈΠ· полоТСния ΠΈΠ· полоТСния ΠΈΠ· полоТСния ΠΈΠ· Π΅Π³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт массива назначаСтся ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ индСкс, основанный Π½Π° Π΅Π³ΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ. самый ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт массива, ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса 0 (ноль) . Основной Ρ†Π΅Π»ΡŒΡŽ индСксации являСтся простота доступа. ΠŸΡ€ΠΎΡ‰Π΅ говоря, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам массива, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΈΡ… индСксы для выполнСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с этими элСмСнтами.

Бинтаксис: имя_массива[индСкс]

НапримСр,

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρƒ нас Π΅ΡΡ‚ΡŒ 9 всСго элСмСнтов массива, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌΡƒ элСмСнту Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Β«ΠΎΡ‚Β», Ρ‚ΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ имя массива со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ индСкса 2 (ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ индСксация начинаСтся с нуля, Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ элСмСнт стоит со Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ индСкса) Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобках, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ myArray[2].

ИзмСнСниС элСмСнта массива

Π§Ρ‚ΠΎΠ±Ρ‹ сначала ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта массива, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊ Π½Π΅ΠΌΡƒ доступ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΅Π³ΠΎ индСкс, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ равСнства с Π½ΠΎΠ²Ρ‹ΠΌ ΠΆΠ΅Π»Π°Π΅ΠΌΡ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ.

Бинтаксис: arrayName[index] = newValue

НапримСр,

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π΄ΠΎ измСнСния значСния Ρƒ нас Π±Ρ‹Π»ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 333 Π½Π° 2-ΠΌ index ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ массива myArray, Π·Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого элСмСнта со значСния 3 Π½Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 7 ΠΏΠΎ индСксу 2. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ массива ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ 777 вмСсто 333.

Π¦ΠΈΠΊΠ» ΠΏΠΎ массиву

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊΠΎ всСм элСмСнтам массива JavaScript, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» for(ΠΈΠ»ΠΈ for-each).

НапримСр, Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта массива, Π² Ρ‚Π°ΠΊΠΈΡ… ситуациях ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ»Ρ‹ (здСсь для Ρ†ΠΈΠΊΠ»Π°) Π² JavaScript.

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ массива myArray со значСниями ΠΎΡ‚ 1 Π΄ΠΎ 5 ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π±Ρ€Π°Π»ΠΈ вСсь массив, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ†ΠΈΠΊΠ» for для доступа ΠΊ Π΅Π³ΠΎ значСниям, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ΠΈΡ…. ΠœΡ‹ Π½Π°Ρ‡Π°Π»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ с 0, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ индСксация массива начинаСтся с нуля, ΠΈ ΠΌΡ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ Ρ†ΠΈΠΊΠ» Π΄ΠΎ Π΄Π»ΠΈΠ½Ρ‹ массива. ΠœΡ‹ использовали свойство length массива, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π΄Π»ΠΈΠ½Ρƒ.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта Π² ΠΊΠΎΠ½Π΅Ρ† массива

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт (ΠΈΠ»ΠΈ большС) Π² ΠΊΠΎΠ½Π΅Ρ† массива JavaScript, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ push(). ΠœΠ΅Ρ‚ΠΎΠ΄ push(), ΠΊΠ°ΠΊ слСдуСт ΠΈΠ· названия, ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ элСмСнт (ΠΈΠ»ΠΈ элСмСнты) Π² ΠΊΠΎΠ½Π΅Ρ† массива.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Ρ…ΠΎΠ΄:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 2:

Π’Ρ‹Ρ…ΠΎΠ΄: 902 09

Наблюдая Π·Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌΠΈ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ, Π²Ρ‹ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»ΠΈΠ±ΠΎ ввСсти ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ массивС с использованиСм ΠΌΠ΅Ρ‚ΠΎΠ΄Π° массива push(), ΠΈ ΠΏΡ€ΠΎΡ‚Π°Π»ΠΊΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ значСния Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΡŒ массива.

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΈΠ· ΠΊΠΎΠ½Ρ†Π° массива

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΈΠ· ΠΊΠΎΠ½Ρ†Π° массива JavaScript, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ pop(). ΠœΠ΅Ρ‚ΠΎΠ΄ pop(), ΠΊΠ°ΠΊ слСдуСт ΠΈΠ· названия, ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ элСмСнт ΠΈΠ· ΠΊΠΎΠ½Ρ†Π° массива. НапримСр,

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ «автобус» выталкиваСтся ΠΈΠ· массива транспортных срСдств.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° массива

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° массива JavaScript, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ shift(). ΠœΠ΅Ρ‚ΠΎΠ΄ shift(), ΠΊΠ°ΠΊ слСдуСт ΠΈΠ· названия, сдвигаСт элСмСнты массива Π²Π»Π΅Π²ΠΎ, удаляя элСмСнт ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° массива. НапримСр,

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт автомобиля ΠΈΠ· массива транспортных срСдств, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива shift().

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта Π² Π½Π°Ρ‡Π°Π»ΠΎ массива

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт (ΠΈΠ»ΠΈ элСмСнты) Π² Π½Π°Ρ‡Π°Π»ΠΎ массива JavaScript, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ unshift(). ΠœΠ΅Ρ‚ΠΎΠ΄ unshift() as сдвигаСт Ρ€Π°Π½Π΅Π΅ сохранСнныС элСмСнты Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ вставляСт Π½ΠΎΠ²Ρ‹Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ элСмСнты Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ индСкса массива. НапримСр,

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Π²ΠΎΠ΄:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ элСмСнт Ρ„ΡƒΡ€Π³ΠΎΠ½ Π² Π½Π°Ρ‡Π°Π»ΠΎ массива транспортных срСдств, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива unshift(). Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ нСсколько элСмСнтов Π² Π½Π°Ρ‡Π°Π»ΠΎ массива транспортных срСдств, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива unshift().

Найти индСкс элСмСнта Π² массивС

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π½Π°ΠΉΡ‚ΠΈ индСкс любого элСмСнта Π² массивС JavaScript, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ indexOf(). ΠœΠ΅Ρ‚ΠΎΠ΄ indexOf(), ΠΊΠ°ΠΊ слСдуСт ΠΈΠ· названия, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта ΠΈΠ· массива. Если ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ элСмСнт отсутствуСт Π² массивС, ΠΌΠ΅Ρ‚ΠΎΠ΄ indexOf() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ -1. НапримСр,

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ использовали ΠΌΠ΅Ρ‚ΠΎΠ΄ indexOf(), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ индСкс элСмСнта truck Π² массивС cars, ΠΈ ΠΎΠ½ Π²Π΅Ρ€Π½ΡƒΠ» 2 Π² качСствС этого элСмСнта. присутствовал ΠΏΡ€ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ индСкса 2.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ использовали ΠΌΠ΅Ρ‚ΠΎΠ΄ indexOf() для нахоТдСния индСкса элСмСнта van Π² массивС cars ΠΈ ΠΎΠ½ Π²Π΅Ρ€Π½ΡƒΠ» -1, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ этот элСмСнт Π½Π΅ присутствовал Π² массивС.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта ΠΏΠΎ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΈΠ· массива JavaScript, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ splice(). ΠœΠ΅Ρ‚ΠΎΠ΄ splice() ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для удалСния, добавлСния ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π·Π°ΠΌΠ΅Π½Ρ‹ элСмСнта(ΠΎΠ²) Π² массивС . Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° splice(), Π²Π»ΠΈΡΡŽΡ‚ (ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚) исходный массив.

ΠœΠ΅Ρ‚ΠΎΠ΄ splice() ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ‚Ρ€ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Π΄Π²Π° ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ.

  1. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ β€” это позиция индСкса, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ начинаСтся указанная опСрация.
  2. Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ β€” количСство удаляСмых элСмСнтов, начиная с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса.
  3. Π’Ρ€Π΅Ρ‚ΠΈΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ β€” это элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² массив.

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ удалСния элСмСнта ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Π²ΠΎΠ΄:

Π—Π΄Π΅ΡΡŒ, Π² этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, ΠΌΡ‹ использовали ΠΌΠ΅Ρ‚ΠΎΠ΄ splice() для удалСния элСмСнта ΠΈΠ· индСкса 1. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ с индСкса 1. Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ 1 элСмСнт ΠΈΠ· этого индСкса. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, элСмСнт с индСксом 1, Ρ€Π°Π²Π½Ρ‹ΠΉ Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅, Π±Ρ‹Π» ΡƒΠ΄Π°Π»Π΅Π½ (ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½) ΠΈΠ· массива.

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ элСмСнты ΠΈΠ· ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство элСмСнтов (ΠΈΠ»ΠΈ элСмСнтов) ΠΈΠ· массива JavaScript, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ индСкса, ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ splice(), ΠΊΠ°ΠΊ я ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π» Π²Ρ‹ΡˆΠ΅. — Π΄Π°Π½Π½Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 1:

Π’Ρ‹Π²ΠΎΠ΄:

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ элСмСнты массива, начиная с индСкса 2 ΠΈ заканчивая послСдним элСмСнтом. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Π½Π΅ ΠΏΡ€ΠΎΡˆΠ»ΠΈ Π½Π΅Ρ‚. элСмСнтов, ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ, ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ всС элСмСнты ΠΈΠ· индСкса 2.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ Ρ‚Ρ€ΠΈ элСмСнта массива, начиная с индСкса 2. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ ΠΏΡ€ΠΎΡˆΠ»ΠΈ Π½Π΅Ρ‚. элСмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ 3, Ρ‚Ρ€ΠΈ элСмСнта ΠΈΠ· индСкса 2 Π±Ρ‹Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹, Ссли ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ 4, Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ элСмСнта Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ элСмСнт (ΠΈΠ»ΠΈ элСмСнты) Π² массив JavaScript, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ индСкса, ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ splice(). Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Π²ΠΎΠ΄:

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° splice():

  1. 2 β€” это индСкс, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ начинаСтся опСрация.
  2. 0 ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ Π½ΡƒΠ»Π΅Π²Ρ‹Π΅ элСмСнты, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π±Π΅Π· удалСния элСмСнтов.
  3. элСмСнтов, Ρ‡Π΅ΠΌ всС элСмСнты (Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ запятой), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ.

ΠœΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΈ Ρ‚Ρ€ΠΈ Π½ΠΎΠ²Ρ‹Ρ… элСмСнта; поэтому Π² массив Π±Ρ‹Π»ΠΈ вставлСны Ρ‚Ρ€ΠΈ Π½ΠΎΠ²Ρ‹Ρ… элСмСнта, начиная с индСкса 2.

Π—Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнт Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнт ΠΈΠ· массива JavaScript Π΄Ρ€ΡƒΠ³ΠΈΠΌ элСмСнтом, ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ splice(). Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Π²ΠΎΠ΄:

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Π·Π°ΠΌΠ΅Π½ΠΈΠ»ΠΈ элСмСнт 3 Π² ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ индСкса 3 Π½ΠΎΠ²Ρ‹ΠΌ элСмСнтом newThree с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° splice(). Π’ ΠΌΠ΅Ρ‚ΠΎΠ΄ splice() ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹:

  1. 3 β€” это индСкс, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ начинаСтся опСрация.
  2. 1 ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ Π½ΡƒΠ»Π΅Π²Ρ‹Π΅ элСмСнты, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π±Π΅Π· удалСния элСмСнтов.
  3. newThree β€” элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ.

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ массива

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вСсь массив JavaScript Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ содСрТимоС массива Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ? Π’ этом сцСнарии ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ массива slice(). ΠœΠ΅Ρ‚ΠΎΠ΄ slice Π½Π°Ρ€Π΅Π·Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ массива Π±Π΅Π· измСнСния исходного массива . Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, этот ΠΌΠ΅Ρ‚ΠΎΠ΄ оказываСтся ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ части ΠΈΠ»ΠΈ всСго массива Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ.

ΠœΠ΅Ρ‚ΠΎΠ΄ slice() ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ Π΄Π²ΡƒΡ… Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

  1. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса Π½Π° Π½Π°Ρ‡Π°Π»ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅/ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ элСмСнтов)
  2. Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса нСпосрСдствСнно ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

Если ΠΌΡ‹ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Ρ‚ΠΎ всС содСрТимоС массива копируСтся (ΠΈΠ»ΠΈ извлСкаСтся).

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Π²ΠΎΠ΄:

ОбъяснСниС:

  1. ΠŸΠΎΠ»Ρ‹ массива β€” это массив, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΡ‹ скопировали элСмСнты Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ массивы. Когда ΠΌΡ‹ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ массив этаТСй, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ всС этаТи (элСмСнты), Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½Π½Ρ‹Π΅ Π² консоли.
  2. Π’ массивС allFloors ΠΌΡ‹ использовали ΠΌΠ΅Ρ‚ΠΎΠ΄ slice() Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²; ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, элСмСнты массива этаТСй Π±Ρ‹Π»ΠΈ скопированы Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π³ΠΎ.
  3. Π’ массивС nFloors ΠΌΡ‹ использовали ΠΌΠ΅Ρ‚ΠΎΠ΄ slice() Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΎΠ΄Π½ΠΈΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ; ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, всС элСмСнты Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ΡΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса, Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° послСднСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ скопировано Π² массив nFloors.
  4. Π’ массивС threeFloors ΠΌΡ‹ использовали ΠΌΠ΅Ρ‚ΠΎΠ΄ slice() с двумя Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ, 0 ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ индСкса, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ начинаСтся опСрация, Π° 3 ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ индСкса.

Как массивы ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ?

JavaScript ΠœΠ°ΡΡΠΈΠ²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° typeof. Как слСдуСт ΠΈΠ· названия, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ typeof Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ это Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

Π’Ρ‹Π²ΠΎΠ΄:

ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ typeof Π΄Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΊΠ°ΠΊ для массивов, Ρ‚Π°ΠΊ ΠΈ для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ массивы Ρ‚Π°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π² JavaScript . ΠœΠ΅ΠΆΠ΄Ρƒ массивами ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ сходство. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² JavaScript ΠΈΠΌΠ΅ΡŽΡ‚ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ значСния, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ значСния хранятся Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€Ρ‹ Β«ΠΊΠ»ΡŽΡ‡Π΅ΠΉΒ», ΠΈ ΠΊ значСниям ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΈΡ… ΠΊΠ»ΡŽΡ‡ΠΈ. Π§Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅Π΅ Π² случаС с массивами, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам массива, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΈΡ… значСния индСкса. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρƒ массивов Π΅ΡΡ‚ΡŒ числа для доступа ΠΊ элСмСнтам, Π° Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΅ΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡ΠΈ для доступа ΠΊ элСмСнтам. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ собираСмся ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ свойства массива JavaScript.

Бвойства массива

Π•ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ свойства массивов JavaScript, Π½ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ свойство Π΄Π»ΠΈΠ½Ρ‹. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ обсудим Ρ‚ΠΎΠ»ΡŒΠΊΠΎ свойство Π΄Π»ΠΈΠ½Ρ‹.

  1. конструктор: это свойство Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая создала ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° массива.
  2. Π”Π»ΠΈΠ½Π°
  3. : это свойство ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для установки, Π° Ρ‚Π°ΠΊΠΆΠ΅ для Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° количСства элСмСнтов, ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π²Π½ΡƒΡ‚Ρ€ΠΈ массива.
  4. ΠŸΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ
  5. : это свойство ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для добавлСния ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ свойств ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Array.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ обсудим свойство Π΄Π»ΠΈΠ½Ρ‹.

Бвойство Π΄Π»ΠΈΠ½Ρ‹

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π½Π°ΠΉΡ‚ΠΈ количСство элСмСнтов (ΠΈΠ»ΠΈ элСмСнтов), ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² массивС JavaScript, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ являСтся Π΄Π»ΠΈΠ½ΠΎΠΉ массива, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свойство Π΄Π»ΠΈΠ½Ρ‹ массива. Π­Ρ‚ΠΎ свойство Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ массива Π² числовом Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.

Π’Ρ‹Π²ΠΎΠ΄:

Π’Ρ‹Π²ΠΎΠ΄ 8 Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всСго Π² массивС присутствуСт 8 элСмСнтов.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π½Π΅ считаСт элСмСнты, находящиСся Π²Π½ΡƒΡ‚Ρ€ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ массива массива. ΠŸΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅:

Π—Π΄Π΅ΡΡŒ, Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Π΄Π»ΠΈΠ½Π° массива возвращаСтся ΠΊΠ°ΠΊ 6, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ всСго Π² массивС присутствуСт 6 элСмСнтов, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ 5 чисСл ΠΎΡ‚ 1 Π΄ΠΎ 5, ΠΈ ΠΎΠ΄ΠΈΠ½ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ массив, содСрТащий элСмСнты ΠΎΡ‚ 6 Π΄ΠΎ 10. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ массива Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ Π΄Π»ΠΈΠ½Ρ‹ внСшнСго массива.

АссоциативныС массивы

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ассоциативныС массивы? АссоциативныС массивы Ρ‚Π°ΠΊΠΆΠ΅ извСстны ΠΊΠ°ΠΊ ΠΊΠ°Ρ€Ρ‚Ρ‹, словари ΠΈΠ»ΠΈ Ρ…ΡΡˆΠΈ. Основная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ этих массивов Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€Ρ‹ ΠΊΠ»ΡŽΡ‡: Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π³Π΄Π΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ связанный с Π½ΠΈΠΌ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡.

Но Π² JavaScript массивы ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Π½Ρ‹ ΠΈ проиндСксированы, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ числового индСкса для доступа ΠΊ элСмСнту массива, Π½ΠΎ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ для доступа ΠΊ этому элСмСнту. Π§Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ, Π² JavaScript Ρƒ нас Π½Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ ассоциативныС массивы, Π½ΠΎ Ρƒ нас Π΅ΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² JavaScript, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ассоциативныС массивы, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ Ρ„Π°ΠΊΡ‚Π°, Ρ‡Ρ‚ΠΎ здСсь это Π½Π΅ массивы, Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² .

Как Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ массив?

Как Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ массив JavaScript? ИспользованиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° typeof? Нисколько. Π― ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π» Π²Ρ‹ΡˆΠ΅, Ρ‡Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ typeof Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ для массива, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ массивы β€” это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² JavaScript. НапримСр,

Π’Ρ‹Π²ΠΎΠ΄:

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ массив с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° typeof, ΠΌΡ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ доступныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ instanceof ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ isArray() Π² JavaScript.

ИспользованиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° instanceof

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ instanceof, ΠΊΠ°ΠΊ слСдуСт ΠΈΠ· названия, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ экзСмпляра значСния. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ для ясного понимания.

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ console.log ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ true, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ массив arr являСтся экзСмпляром Array. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ instanceof, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ массив.

ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° isArray()

ΠœΠ΅Ρ‚ΠΎΠ΄ isArray() провСряСт, являСтся Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹ΠΉ массив массивом ΠΈΠ»ΠΈ Π½Π΅Ρ‚. Он Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ true, Ссли ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹ΠΉ массив являСтся массивом, ΠΈΠ½Π°Ρ‡Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ false.

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ»ΠΈ, являСтся Π»ΠΈ пСрСмСнная arr массивом ΠΈΠ»ΠΈ Π½Π΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ isArray(). Когда ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΈ arr Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° isArray() ΠΈ консоль зарСгистрировала это, Π² консоли Π±Ρ‹Π»ΠΎ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true. Но ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ obj Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ isArray() ΠΈ консоль зарСгистрировала Π΅Π³ΠΎ, Π² консоли Π±Ρ‹Π»ΠΎ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½ΠΎ false. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, это Π΄ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ любой массив, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ isArray() Π² JavaScript. Если ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ являСтся массивом, Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false.

Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ массивами ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ основныС различия ΠΌΠ΅ΠΆΠ΄Ρƒ массивами JavaScript ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ. ΠœΡ‹ Ρ€Π°Π·Π΄Π΅Π»ΠΈΠ»ΠΈ различия Π½Π° Ρ‚Ρ€ΠΈ ΠΏΡƒΠ½ΠΊΡ‚Π°: ИспользованиС, ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΈ Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ обсудим ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ….

ИспользованиС:

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ всС элСмСнты Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΊΠ»ΡŽΡ‡Π° (ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½ΠΈ) Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ массивы, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ массивы β€” Π»ΡƒΡ‡ΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€ Π² Ρ‚Π°ΠΊΠΎΠΌ сцСнарии, Π½ΠΎ Ссли ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ для хранСния элСмСнтов Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€ ΠΊΠ»ΡŽΡ‡: Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ эффСктивно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ, это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ, студСнт, сотрудник, машина ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π΅Ρ‰Π΅. Π­Ρ‚ΠΎΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ характСристики Π² зависимости ΠΎΡ‚ сущности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ «свойствами» ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π­Ρ‚ΠΈ свойства ΠΈΠΌΠ΅ΡŽΡ‚ Ρ„ΠΎΡ€ΠΌΡƒ ΠΊΠ»ΡŽΡ‡: Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΊΠ°ΠΊ массивы, Ρ‚Π°ΠΊ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ слуТат ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Ρ†Π΅Π»ΠΈ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… случаСв использования.

ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ:

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ элСмСнтам массива ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ. К элСмСнтам массива ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ значСния индСкса этих элСмСнтов, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ ΠΊ элСмСнтам ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ имя Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Для доступа ΠΊ элСмСнтам массива Ρƒ нас Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½Π° нотация, которая прСдставляСт собой Π½ΠΎΡ‚Π°Ρ†ΠΈΡŽ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобок, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобок, Π½ΠΎ для доступа ΠΊ элСмСнтам ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρƒ нас Π΅ΡΡ‚ΡŒ Π΄Π²Π΅ доступныС Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ: точСчная нотация ΠΈ нотация ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобок . ПослС доступа ΠΊ массиву ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹, ΠΈ ΠΎΠ±Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ любоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ любого Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ…, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ строка, число, Π΄Π°ΠΆΠ΅ массив ΠΈΠ»ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ.

Π˜Ρ‚Π΅Ρ€Π°Ρ†ΠΈΡ:

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠΎ элСмСнтам массива, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ†ΠΈΠΊΠ»Ρ‹, доступныС Π² JavaScript, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Ρ†ΠΈΠΊΠ» for, Ρ†ΠΈΠΊΠ» for in, Ρ†ΠΈΠΊΠ» while, Ρ†ΠΈΠΊΠ» для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° ΠΈ Ρ‚. Π΄. Но ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ² для массивов являСтся стандартом для Ρ†ΠΈΠΊΠ»Π°. Π’ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ свойства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ эти Ρ†ΠΈΠΊΠ»Ρ‹, Π½ΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ² для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² являСтся Ρ†ΠΈΠΊΠ» for of.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ массива JavaScript

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΌΡ‹ упомянули имя ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Π΅Π³ΠΎ описаниС ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π°, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ быстро ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² JavaScript Array.

907 00 9 0717 reverse()
ΠœΠ΅Ρ‚ΠΎΠ΄ ОписаниС Π’ΠΎΠ·Π²Ρ€Π°Ρ‚
pop() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ удаляСт послСдний элСмСнт массива ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ элСмСнт
push() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ вставляСт Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π² ΠΊΠΎΠ½Π΅Ρ† массива новая Π΄Π»ΠΈΠ½Π° массива
unshift() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ вставляСт s Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π² Π½Π°Ρ‡Π°Π»Π΅ array новая Π΄Π»ΠΈΠ½Π° массива
shift() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ удаляСт самый ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт массива ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ элСмСнт
slice() ΠΈΠ»ΠΈ конкрСтная Ρ‡Π°ΡΡ‚ΡŒ массива Π½ΠΎΠ²Ρ‹ΠΉ массив
splice() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ, ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΈ Π΄Π°ΠΆΠ΅ Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты Π² массивС 17 Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ провСряСт Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ элСмСнт Π² массивС логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
indexOf() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΡ‰Π΅Ρ‚ элСмСнт Π² массивС ΠΏΠΎ Π΅Π³ΠΎ индСксу index(Ссли элСмСнт Π½Π°ΠΉΠ΄Π΅Π½) else -1
concat() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ (ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚) Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ массива ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ массив
sort() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ сортируСт элСмСнты строки массива Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎΠΌ порядкС отсортированный массив
Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ сортируСт элСмСнты строки массива Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎΠΌ порядкС (Π² порядкС убывания) отсортированный массив
find() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт, ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΠΉ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ тСст ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт (ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ)
findIndex() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта массива, ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠ΅Π³ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ индСкс ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта (ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠ΅Π³ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ)
isArray() Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ провСряСт, являСтся Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ массивом ΠΈΠ»ΠΈ Π½Π΅Ρ‚. логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

  • ΠœΠ°ΡΡΠΈΠ²Ρ‹ JavaScript ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для хранСния Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
  • ΠœΠ°ΡΡΠΈΠ²Ρ‹
  • JavaScript ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ способом, Π° Ρ‚Π°ΠΊΠΆΠ΅ с использованиСм Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова.
  • ΠœΠ°ΡΡΠΈΠ²Ρ‹ JavaScript ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ индСксации с отсчСтом ΠΎΡ‚ нуля.
  • ВозмоТности массивов JavaScript ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ свойств массива.
  • ΠœΠ΅Ρ‚ΠΎΠ΄ push() ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ элСмСнт (ΠΈΠ»ΠΈ элСмСнты) Π² ΠΊΠΎΠ½Π΅Ρ† массива
  • ΠœΠ΅Ρ‚ΠΎΠ΄ pop() ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅Ρ‚ элСмСнт ΠΈΠ· ΠΊΠΎΠ½Ρ†Π° массива.
  • ΠœΠ΅Ρ‚ΠΎΠ΄ shift() сдвигаСт элСмСнты массива, удаляя элСмСнт ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° массива.
  • ΠœΠ΅Ρ‚ΠΎΠ΄ unshift() отмСняСт сдвиг старых элСмСнтов ΠΈ вставляСт Π½ΠΎΠ²Ρ‹Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ элСмСнты Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ индСкса массива.
  • ΠœΠ΅Ρ‚ΠΎΠ΄ splice() ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для удалСния, добавлСния ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π·Π°ΠΌΠ΅Π½Ρ‹ элСмСнтов Π² массивС.
  • Π”Π»ΠΈΠ½Π° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ массива.
ΠžΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *