JavaScript -Array.map()
20160 ワード
Array.prototype.map()
map()メソッドは、各配列の要素が所定の関数を呼び出す新しい配列を返します.
const numbers = [1, -1, 2, 3];
const filtered = numbers.filter(n=>n>=0);
console.log(filter) // [1. 2. 3]
const item = filtered.map(n => '<li>'+n+'</li>')
console.log(item) //['<li>1</li>', '<li>2</li>', '<li>3</li>']
const html = '<ul>' + item.join('') + '</ul>'
console.log(html) //<ul><li>1</li><li>2</li><li>3</li></ul>
const items = filtered.map(n=> {
const obj = {value : n};
return obj;
});
▼同じ結果、異なる解答(コードの簡略化)const items = filtered.map(n=> ({value : n}) );
filterまたはmapの場合、それらはすべて配列に戻るので、配列を繰り返し使用する方法にリンクすることができます.const itemts = numbers
.filter(n => n>=0)
.map(n => ({value : n}) )
.filter(obj => obj.value > 1);
.map(obj => obj.value);
🥑 Array.map():表示法1
let numbers = [4, 9, 16, 25]
let result = numbers.map(Math.sqrt);
🥑 Array.map():表示法2
let numbers = [1, 2, 3, 4, 5]
let newNumbers = numbers.map(function(num) {
return num * 2 ;
})
arrow func
let numbers = [1, 2, 3, 4, 5]
let newNumbers = numbers.map(num => num * 2 })
🥑 Array.map():表示法3
function형
let numbers = [1, 2, 3, 4, 5]
function multiplyTwo(num) {
return number * 2;
}
let newNumbers -= numbers.map(multiplyTwo);
📌 例1
let students = [
{id:1, name: 'James'},
{id:2, name: 'Tim'},
{id:3, name: 'John'},
{id:4, name: 'Brian'}
];
let names = students.map(x => students.name);
console.log(names);
📌 例2
var numbers = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
var newNumbers = numbers.map(array => array.map(number => number * 2));
console.log(newNumbers);
📌 例3
配列内の数値の平方根を求めて新しい配列を作成する
var numbers = [1, 4, 9];
var roots = numbers.map(Math.sqrt);
console.log(roots) //[1, 2, 3]
console.log(numbers) //[1, 4, 9]
map()メソッドでは、元の配列は変更されません.📌 例4
mapを使用して配列内のオブジェクトを再編成する
var kvArray = [{key:1, value:10},
{key:2, value:20},
{key:3, value: 30}];
var reformattedArray = kvArray.map(function(obj){
var rObj = {};
rObj[obj.key] = obj.value;
return rObj;
});
// reformattedArray는 [{1:10}, {2:20}, {3:30}]
📌 例5
受信パラメータの関数を使用してデジタルアレイを再編成
パラメータが1つしかない関数を使用してmapがどのように動作するかをチェックします.
var numbers = [1, 4, 9];
var doubles = numbers.map(function(num) {
return num * 2;
});
// doubles는 이제 [2, 8, 18]
// numbers는 그대로 [1, 4, 9]
Reference
この問題について(JavaScript -Array.map()), 我々は、より多くの情報をここで見つけました https://velog.io/@bori9412/JavaScript-Array.mapテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol