Array.splice의 새발견..?

FlashStory/유용한코딩 2008. 3. 6. 11:19

기존에 배열 중간에 값을 추가할때는, 늘 새 배열을 만들어서 for문으로 돌려서 배열을 재설정하는
함수를 만들어서 사용해 왔었습니다.

그런데 오늘에서여, Array.splice 메서드가 배열의 요소를 삭제를 하거나 원하는 요소를 뽑아내기만 하는게 아니라, 추가도 할 수 있다는걸 알게 되었습니다.

레퍼런스를 촘촘히 살펴봤다면 알 수 있었겠지만, 이랭씨.....




간단한 splice 사용예

var myPets_array:Array = new Array("cat", "dog", "bird", "fish");
trace( myPets_array.splice(1) ); // Displays dog,bird,fish.
trace( myPets_array ); // cat

var myFlowers_array:Array = new Array("roses", "tulips", "lilies", "orchids");
trace( myFlowers_array.splice(1,2 ) ); // Displays tulips,lilies.
trace( myFlowers_array ); // roses,orchids



기존에는 위와 같이만 사용을 했었는데, 레퍼런스에 조금만 내려보니

아래와 같은 사용예가 있었습니다.

var myFurniture_array:Array = new Array("couch", "bed", "desk", "lamp");
trace( myFurniture_array.splice(1,0, "chair" ) ); // Displays empty array.
trace( myFurniture_array ); // displays couch,chair,bed,desk,lamp
간단히 1번 인덱스에 chair 요소를 추가를 하게 되는겁니다.




1번 인덱스에 추가하게 되면, 기존에 있던 1번 인덱스에 있던 요소들은 자연적으로 하나씩 미뤄지게 됩니다.

설정

트랙백

댓글