본문 바로가기

ECMAScript 2015, ECMAScript 6th Edition

11. Array Object

ECMA Script 5 부터 이미 Array 라는 빌트인 오브젝트가 존재했다. 그런데 이 Array Object 에 새로운 기능들이 많이 추가 됐으니...


자세한 내용은 아래의 URL 을 참고하기 바란다.

참고 : http://www.ecma-international.org/ecma-262/6.0/#sec-array-objects


근데 솔직히 여기에 내용을 다 적지는 못하겠다.. ㅋㅋ

읽을 엄두도 안날만큼의 양이라서 ㅜㅠ 그냥 눈에 보이는것, 그리고 영보 쌤 강의에서 배운것들만 몇개 정리해보겠다!


Array.from

let arrayLike = { 0: 'zero', 1: 'one', length:2};
let arrayObj = Array.from(arrayLike);

console.log(Array.isArray(arrayObj));  // true
console.log(Array.isArray(arrayLike)); // false

arrayObj = Array.from("ABC");
//"ABC" 는 iterable object 이기 때문에 
//array object 로 from 을 써서 변환 가능
console.log(arrayObj);
//['A', 'B', 'C']

array like object 를 array object 로 바꿔주기도 하고, String object 를 array object 로 바꿔주기도 한다.




Array.of

let list = Array.of(1,2,3);
console.log(list);
//[1,2,3] 출력

Document 에 따르면a well-formed rest argument value 를 array object 로 변환 시켜 준다.

여기서 well-formed rest argument 라는말이 어떠한 배열처럼 잘 정렬되어 있는 형태를 의미하는것... 이라고 추측해본다. 
(출처 : http://www.ecma-international.org/ecma-262/6.0/#sec-array.of )





Array.prototype.copyWithin ( target, start[, end] )

let one = [1,2,3,4,5];
one.copyWithin(0,3);
console.log(one)
//인덱스 3~ 끝까지 복사해서 0의 인덱스부터 집어 넣음
//[4,5,3,4,5] 출력

let two = [1,2,3,4,5];
two.copyWithin(0,2,4);
console.log(two);
//인덱스 2~4까지 복사해서 0의 인덱스부터 집어넣음
//[3,4,3,4,5] 출력

let three = [1,2,3,4,5];
three.copyWithin(3);
console.log(three);
//전체를 복사해서 3번째 인덱스부터 넣음
//[1,2,3,1,2]


function two() {
	return Array.prototype.copyWithin.call(
		arguments, 3, 0, 2);
}
let list = two([1,2,3,4,5]);
console.log(list);
//[1,2,3,1,2] 출력




'ECMAScript 2015, ECMAScript 6th Edition' 카테고리의 다른 글

12. Generator  (0) 2017.01.24
10. Object assign  (0) 2016.09.27
9. for of  (0) 2016.09.25
8. Enhanced Object ProPerties  (0) 2016.09.15
7. destructuring  (0) 2016.09.13