Array.prototype.flatMap - garevna/js-course GitHub Wiki
entries()
every()
filter()
find()
findIndex()
Получим массив cookie с помощью следующего кода:
document.cookie = "name=user"
document.cookie = "token=Jd7-js15/84"
document.cookie = "inerest=javascript"
var cookie = document.cookie.split ( "; " )▼ (3) ["name=user", "token=Jd7-js15/84", "inerest=javascript"]
► 0: "name=user"
► 1: "token=Jd7-js15/84"
► 2: "inerest=javascript"
length: 3
► __proto__: Array(0)Теперь применим метод map к массиву cookie
console.log (
cookie.map (
function ( item ) {
return item.split ( "=" )
}
)
)▼ (3) [Array(2), Array(2), Array(2)]
► 0: (2) ["name", "user"]
► 1: (2) ["token", "Jd7-js15/84"]
► 2: (2) ["inerest", "javascript"]
length: 3
► __proto__: Array(0)Мы получили массив, элементы которого являются массивами
Теперь применим метод flatMap к массиву cookie
console.log (
cookie.flatMap (
function ( item ) {
return item.split ( "=" )
}
)
)▼ (6) ["name", "user", "token", "Jd7-js15/84", "inerest", "javascript"]
0: "name"
1: "user"
2: "token"
3: "Jd7-js15/84"
4: "inerest"
5: "javascript"
length: 6
► __proto__: Array(0)Мы получили "плоский" массив
Итак, используя одну и ту же функцию:
function ( item ) {
return item.split ( "=" )
}мы получили в первом случае массив массивов, а во втором - "плоский" массив
forEach()
keys()
map()
reduce()
reduceRight()
some()
sort()
values()