Javascript

[Javascript] Array 함수

itaeiou 2022. 3. 23. 18:01
반응형

Array(n)

length가 5인 새로운 배열을 생성합니다.

 

fill(n) fill(n, start, end)

배열의 시작 인덱스부터 끝 인덱스의 이전까지 정적인 값 하나로 채움

const array1 = [1, 2, 3, 4];

// 2번부터 4번이전까지 0으로 채움
array1.fill(0, 2, 4);		// [1, 2, 0, 0]

// 1번부터 2번이전까지 0으로 채움
array1.fill(0, 1, 2);		// [1, 0, 0, 4]

// 1번부터 끝까지 0으로 채움
array1.fill(0, 1);			// [1, 0, 0, 0]

// 모두 0으로 채움
array1.fill(0);				// [6, 6, 6, 6]

// 글자도 가능
array1.fill('a');			// ['a', 'a', 'a', 'a']

 

from

유사 배열 객체(array-like object)나 순회 가능한 객체(iterable object)를 얕게 복사해 새로운 Array 객체를 생성

  • 유사 배열 객체 : length 속성과 인덱싱된 요소를 가진 객체 (ex. String)
  • 순회 가능한 객체 : 요소의 처음부터 끝까지 순회가능한 객체 (ex. Map Set)
Array.from('foo');		// ["f", "o", "o"]

const s = new Set(['foo', window]);
Array.from(s);			// ["foo", window]

const m = new Map([[1, 2], [2, 4], [4, 8]]);
Array.from(m);			// [[1, 2], [2, 4], [4, 8]]

const mapper = new Map([['1', 'a'], ['2', 'b']]);
Array.from(mapper.values());	// ['a', 'b'];
Array.from(mapper.keys());		// ['1', '2'];


Array.from([1, 2, 3], x => x + x);		// [2, 4, 6]
Array.from({length: 5}, (v, i) => i);	// [0, 1, 2, 3, 4]

 

filter

주어진 조건을 통과하는 요소를 모아 새로운 배열을 반환.

기존 배열 변경 X

 

arr.filter(callback(element[, index[, array]])[, thisArg])

모든 요소에 대해 callback 함수를 호출해 true로 반환하는 값을 모아 새로운 배열을 생성.

const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];

const result = words.filter(word => word.length > 6);

console.log(result);
// expected output: Array ["exuberant", "destruction", "present"]
var filtered = [12, -5, 8, -57, 130, 44, -122].filter(v => v > 0);

console.log(filtered);
// expected output: Array [12, 8, 130, 44]

 

반응형

'Javascript' 카테고리의 다른 글

[Javascript] 템플릿 리터럴(Template Literals)  (0) 2022.03.23
[Javascript] String 함수  (0) 2022.03.23