Рубрики
Без рубрики

Учебник JavaScript: Как использовать методы массива

Когда я начинаю изучать JavaScript, я не знал, в чем разница между каждым методом. Я пытаюсь… Tagged with JavaScript, Node.

Когда я начинаю изучать JavaScript, я не знал, в чем разница между каждым методом. Я стараюсь объяснить некоторые методы массива в JavaScript, и я напишу пример для каждого массива.

.findindex () Метод возвращает индекс в типированном массиве. Например, у вас есть этот код:

let array = [600, 400, 300, 1402, 948, 133, 200, 99]
array.findIndex((value) => value > 600) //output 3 

Когда вы запустите его, он вернется 3, потому что 1402 является следующим самым большим номером. Но если вы используете один и тот же массив с .filter () Метод он вернет что -то еще, потому что метод фильтра создает новый массив со всеми элементами, которые проходят тест, реализованный предоставленной функцией.

let array = [600, 400, 300, 1402, 948, 133, 200, 99]
array.filter((x) => x > 600) //output Array [ 1402, 948 ]

Другой пример для .filter () :

let products = [
    { name: "Math book", price: 10.99 },
    { name: "Python book", price: 43.87 },
    { name: "Physics book", price: 33 }
]

let expensiveProducts = products.filter((product) => product.price >= 15)
//output
//{ name: "Python book", price: 43.87 },
//{ name: "Physics book", price: 33 }

Как мы видим, вывод – это книга Python и книга по физике, потому что они стоят более 15.

.map () Метод создает новый массив с результатами вызова предоставленной функции на каждом элементе в массиве вызова. Давайте использовать тот же пример, но с помощью метода карты.

let products = [
    {name: "Math book", price: 10.99},
    {name: "Python book", price: 43.87},
    { name: "Physics book", price: 33}
]

let prices = products.map((product) => product.price) 
// output Array(3) [ 10.99, 43.87, 33 ]

Как мы видим, результат будет новым массивом с ценами.

.some () Метод проверяет, проходит ли хотя бы один элемент в массиве тест, реализованный предоставленной функцией. Это возвращает логическое значение. Но . -Every () Метод проверяет, проходят ли все элементы в массиве тест, реализованный предоставленной функцией. Это возвращает логическое значение. А вот пример:

let users = [
    { name: "Bill Gates", age: 64},
    { name: "Mark Zuckerberg", age: 35},
    { name: "Elon Musk", age: 48},
    { name: "Sundar Pichai", age: 47},
    { name: "Satya Nadella", age: 52}
]

users.some(user => user.age <= 50) //true
users.every(user => user.age <= 50) //false

Как вы можете видеть некоторым пользователям менее 50 лет, так что это правда. Но никто из них не менее 50 лет, что является ложным.

.reduce () Метод выполняет функцию редуктора (которую вы предоставляете) на каждом элементе массива, что приводит к одному выходному значению. В приведенном ниже коде мы использовали метод снижения для аккумулятора цены для каждой книги.

let products = [
    { name: "Math book", price: 10.99 },
    { name: "Python book", price: 43.87 },
    { name: "Physics book", price: 33 }
]

let sum = products.reduce((accumulator, element) => accumulator + element.price, 0)
console.log(sum) //output 87.86

Оригинал: “https://dev.to/0xessa/javascript-tutorial-how-to-use-array-methods-1p18”