JavaScript

Array manipulation

ToKor 2020. 12. 17. 01:14

배열선언방법

var arr = new Array();

var arr = new Array(10);

var arr = new Array("abc", "def", "ghi");

var arr = [1,2,3,4,5,6];

 

map(): arr.map(x=>x*2) // 오리지널 데이터를 각 원소별로 동일하게 업데이트 해줌

filter(): arr.filter(x=>x>3) // 조건에 따라 필터해서 나타내줌

reduce(): arr.reduct((accumulator, currentValue) => accumulator + currentValue)  // 배열원소의 전체합

some(): arr.some(ele => ele === "stgring"[number][condition])  // 원소중 조건만족 한개라도 하면 true 아니면 false

every(): arr.every(ele => ele > 0)  // 모든 원소가 조건만족을 해야 true 아니면 false

includes(): arr.includes("str"[num])  // 원소중 해당 값을  포함하고 있는지 true/false. some은 조건, include는 값자체

find(): arr.find(x => x>2)  // 원소값중 해당 조건을 만족하는 첫번째 원소 리턴, 없으면 undefined

entries(): arr.entries()  // 배열로부터 iteration object를 생성. [키,밸류] 배열로 리턴

keys(): Object.keys(arr[obj])  // 객체또는 배열의 키 값만 추출하여 배열로 리턴

var arr = ["ab","cd","ef","gh"];
var arr2 = [1,2,3,4,5,6];

/* map() */
var res = arr.map(x => x + 'V');   //  ["abV","cdV","efV","ghV"]
var res2 = arr2.map(x => x*2);   //  [2,4,6,8,10,12]

/* filter() */
var res = arr2.filter(x => x>3);   // [4,5,6]

/* reduce() */
var res = arr2.reduce((acc, cur) => acc + cur);   // 21

/* some() */
var res = arr.some(ele => ele === 'ab');   //  true
var res = arr.some(ele => ele === 'bc');   // false

/* every() */
var res = arr2.every(ele => ele > 0);   //  true
var res = arr2.every(ele => ele > 1);   //  false

/* includes() */
var res = arr.includes("ab");   //  true
var res = arr.includes("a");   //  false

/* find() */
var res = arr2.find(x => ele > 2);   //  3
var res = arr2.find(x => ele > 6);   //  undefined

/* entries() */
var res = arr.entries();
res.next().value();   //  [0, "ab"]
for(i of res){
	console.log(i);   //  [0,"ab"] [1,"cd"] [2, "ef"] [3,"gh"]
}

/* keys() */
var arr = ["ab","cd","ef","gh"];
var obj = {
  a: "ab",
  b: "bc",
  c: "cd"
}
var res = Object.keys(arr);   //  ["0","1","2","3"]
var res = Object.keys(obj);   //  ["a","b","c"]