другой метод для цикла в массиве?Javascript - PullRequest
0 голосов
/ 19 сентября 2018

Можете ли вы объяснить другие методы цикла в массиве?

function blabla(number){
for ( let i = 0 ; i < number.length ; i++)
 ..........
}


console.log([1,2,3,4,5,6])// true

console.log([2,4,6,8])  // true

console.log([1,2,6,8,9,11, 25]) false

мы можем использовать forEach для цикла?как насчет карты и фильтра?

Ответы [ 2 ]

0 голосов
/ 19 сентября 2018

Существует множество различных способов перебора массива.

Давайте использовать этот массив в качестве примера: const array = ['foo', 'bar']

for..of

Это будет повторятьчерез значения в массиве.

const array = ['foo', 'bar']
for (element of array) {
  console.log(element)
}

for..in

Это будет повторять свойства в массиве.В этом случае это будут индексы массива.Честно говоря, я бы не советовал это повторять массивы.

const array = ['foo', 'bar']
for (element in array) {
  console.log(element)
}

Array.forEach()

Это вызовет обратный вызов для каждого из элементов в массиве.Это позволяет вам передать функцию, которая будет принимать каждый элемент в качестве параметра.

const array = ['foo', 'bar']
const doSomething = e => console.log(e)

array.forEach(element => console.log(element))
//or
array.forEach(doSomething)

Array.map()

Это вызовет обратный вызов для каждого из элементов в массиве, как в методе forEach, но в этой функциивы можете return значение изменить исходное значение элемента, а return значение функции карты будет массив с измененными значениями.

Это добавит 'test' в конецкаждый из элементов, и вернуть полученный массив.

const array = ['foo', 'bar']

const mappedArray = array.map(element => element.concat('test'))
console.log(mappedArray)

Array.filter()

Это запустит функцию для каждого из элементов в массиве и в зависимости от того, вернете ли вы правдивость или falsy , он будет включать или исключать этот элемент из возвращаемого массива

Это отфильтрует все элементы, содержащие букву "f".

const array = ['foo', 'bar']

const filteredArray = array.filter(element => !element.includes('f'))
console.log(filteredArray)

Это лишь некоторые из них.Я также рекомендовал бы изучить Array.reduce () , Array.every () и Array.some () .

0 голосов
/ 19 сентября 2018

отсчет начнется с 0

function blabla(number){
    $.each(new Array(number),
       function(n){alert(n);}
    );
}

blabla(3);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...