Modern Javascipt(アレイ内蔵関数)
24660 ワード
次に、よく使われる配列内蔵関数を見てみましょう.
forEach:アレイを巡回するための単純な組み込み関数
map:元の配列をループし、各要素に対してコールバック関数を実行し、戻り値を返します.
forEachと似ていますが、戻りを返しますので、変数に代入できます.
include:所与の配列に任意の値が存在するか否かを判断する(true,false)
indexOf:任意の値が所与の配列の何番目に存在するかを返します.(-1がない場合)
indexOfが最初の値である場合、すなわち0を返す場合false処理(0はfalsey)
それを補うためにincludeが現れた.
findIndex:条件を満たす配列のインデックス番号を返す
find:条件を満たす配列の要素を返します.
filter:条件に基づいて配列内のtrueを返すすべての要素を返す
slice:配列内の要素を条件に基づいて切り取る方法
concat:2つの配列をマージする方法
sort:元の配列をアルファベット順にソート
join:配列内の値を後続の出力として使用する方法
forEach
forEach:アレイを巡回するための単純な組み込み関数
const array = ['a', 'b', 'c', 'd'];
array.forEach((param) => console.log(param)); // a, b, c, d
Push、pop、shift、unshiftなどの機能を組み合わせることで、Eachの内蔵関数をより大きな役割を果たすことができます.const array = ['a', 'b', 'c', 'd'];
const newArray = [];
array.forEach((param) => newArray.push(param + param));
console.log(newArray); // ['aa', 'bb', 'cc', 'dd']
map
map:元の配列をループし、各要素に対してコールバック関数を実行し、戻り値を返します.
forEachと似ていますが、戻りを返しますので、変数に代入できます.
const array = ['a', 'b', 'c', 'd'];
const newArray = array.map((param) => {return param + param + param;})
console.log(newArray); // ['aaa', 'bbb', 'ccc', 'ddd']
includes
include:所与の配列に任意の値が存在するか否かを判断する(true,false)
const array = ['a', 'b', 'c', 'd'];
let str = "b";
console.log(array.includes(str)); // true
indexOf
indexOf:任意の値が所与の配列の何番目に存在するかを返します.(-1がない場合)
indexOfが最初の値である場合、すなわち0を返す場合false処理(0はfalsey)
それを補うためにincludeが現れた.
const array = ['a', 'b', 'c', 'd'];
let str = "b";
console.log(array.indexOf(str)); // 1
findIndex
findIndex:条件を満たす配列のインデックス番号を返す
const arrObj = [
{color : "red"},
{color : "blue"},
{color : "green"},
{color : "pink"},
{color : "blue"}
]
console.log(arrObj.findIndex((value) => {
return value.color === "pink"; // 3
}));
find
find:条件を満たす配列の要素を返します.
const arrObj = [
{color : "red"},
{color : "blue"},
{color : "green"},
{color : "pink"},
{color : "blue"}
]
console.log(arrObj.find((value) => {
return value.color === "pink"; // {color : pink}
}));
filter
filter:条件に基づいて配列内のtrueを返すすべての要素を返す
const arrObj = [
{color : "red"},
{color : "blue"},
{color : "green"},
{color : "pink"},
{color : "blue"}
]
console.log(arrObj.filter((value) => value.color === "blue")) // [{color: 'blue'}, {color: 'blue'}]
slice
slice:配列内の要素を条件に基づいて切り取る方法
const arrObj = [
{color : "red"},
{color : "blue"},
{color : "green"},
{color : "pink"},
{color : "blue"}
]
console.log(arrObj.slice(0,3)); [{color: 'red'}, {color: 'blue'}, {color: "green"}]
concat
concat:2つの配列をマージする方法
const array = ['a', 'b', 'c', 'd']
const arrObj = [
{color : "red"},
{color : "blue"},
{color : "green"},
{color : "pink"},
{color : "blue"}
]
console.log(array.concat(arrObj)); // ['a', 'b', 'c', 'd', {…}, {…}, {…}, {…}, {…}]
sort
sort:元の配列をアルファベット順にソート
const engs = ['d', 'e', 'a', 'c', 'b'];
engs.sort();
console.log(engs); //['a', 'b', 'c', 'd', 'e']
ただし、数値をソートする場合は、数値を文字と見なし、1、12、2、233、および3にソートします.const numbers = [3,124,23,5,46,345,32,12,3,41,24,2];
numbers.sort();
console.log(numbers); //[12, 124, 2, 23, 24, 3, 3, 32, 345, 41, 46, 5]
// 때문에 비교함수를 만드는 사전 작업이 필요함
const compare = (num1 , num2) => {
if (num1 > num2){
// numb1 이 num2 보다 크다면 num1을 num2보다 뒤로 보냄
return 1;
};
if (num1 < num2){
// numb1 이 num2 보다 작다면 num1을 num2보다 앞으로 보냄
return -1;
};
return 0;
};
numbers.sort(compare);
console.log(numbers); //[2, 3, 3, 5, 12, 23, 24, 32, 41, 46, 124, 345]
join
join:配列内の値を後続の出力として使用する方法
const strings = ["안녕하세요", "자바스크립트", "es6", "이후", "공부중입니다."];
console.log(strings.join(" ")); // 안녕하세요 자바스크립트 es6 이후 공부중입니다.
Reference
この問題について(Modern Javascipt(アレイ内蔵関数)), 我々は、より多くの情報をここで見つけました https://velog.io/@dev-yun/Modern-Javascipt-배열-내장-함수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol