lang/js

ECMA6 새로운 메서드

C/H 2019. 6. 5. 08:30

ECMAScript 6 New Method

find(), findIndex()

let numbers = [25, 30, 35, 40, 45];
  
console.log(number.find(n => n > 33));    // 35, 3보다 큰값
console.log(number.findIndex(n => 33));   // 2, 3보다 큰값을 가지는 index

fill()

let numbers = [1, 2, 3, 4];
  
numbers.fill(1);
console.log(numbers.toString());  // 1, 1, 1, 1

numbers.fill(1, 2);
console.log(number.toString());   // 1, 2, 1, 1

numbers.fill(0, 1, 3);
console.log(numbers.toString())   // 1, 0, 0, 1

/* 
시작이나 끝 인덱스가 음수면, 그 값은 최종 위치를 결정하기 위해 배열의 length에 더해진다.
예로, 전달된 시작 인덱스가 -1이면 인덱스는 array.length - 1이 되고, array는 fill()이 호출되는 배열이다.
*/

copyWithin()

let numbers = [1, 2, 3, 4];

// 배열 인덱스 2에 값을 붙여넣는다.
// 배열 인덱스 0에서 값을 복사한다.
// 값을 배열 끝까지 복사한다.
numbers.copyWithin(2, 0);

console.log(numbers.toString());    // 1, 2, 1, 2

numbers = [1, 2, 3, 4];

// 배열 인덱스 2에 값을 붙여 넣는다.
// 배열 인덱스 0에서 값을 복사한다.
// 인덱스 1에서 복사를 멈춘다.
numbers.copyWithIn(2, 0, 1);

console.log(numbers.toString());    // 1, 2, 1, 4
/*
fill() 메서드와 마찬가지로 copyWithin()메서드에 어떤 인자든지 음수 값을 전달하면, 
그 값은 적절한 인덱스를 결정하기 위해 배열의 length에 자동으로 더해진다.
*/
반응형