가장 많이 사용되는 속성은 배열의 크기인 lentgh이다. 배열 요소를 반복하면서 처리할 때, 사용한다.
for ( i = 0; i <fruits.length; i ++) {
...
}
concat(value1[value2[value...]])
concat()메서드는 전달된 인수를 배열에 끝에 추가한다. 인수는 배열일 수도 있다.
<script>
var x = [1, 2, 3];
var y = [4, 5, 6];
var joined = x.concat(y);
document.writeln(x);
document(joined);
</script>
indexOf(searchStr[,startindex])
indexOf()메서드는 요소의 값을 가지고 요소의 인덱스를 찾을 때, 사용한다.
<script>
var fruits = ["apple", "banana", "grape"];
document.writeln(fruits.index("banana"));
</script>
push(value),pop()
push()는 스택에 데이터를 삽입하는 메서드이다.pop()는 스택에서 데이터를 꺼내는 메서드이다. 스택에 데이터를 넣었다가 꺼내면 순서가 반대로 된다.
<script>
var numbers = [1, 2, 3, 4, 5];
numbers.push(6);
document.writeln(numbers + '<br>');
item = numbers.pop();
document.writeln(numbers + '<br>')
</script>
shift(), unshift()
shift() 메서드는 배열의 첫 번째 요소를 반환하고 이 첫 번째 요소를 배열에서 제거 한다.
unshift()와 함께 사용하면 자료구조중 하나인 큐를 재현할수 있다.
<script>
var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var item = numbers.shift();
document.writeln(item + ' <br>'); //출력 1
document.writeln(numbers + '<br>'); //출력2,3,4,5,6,7,8,9,10
</script>
sort()
sort() 메서드는 배열을 알파벳순으로 정렬한다.
var myArray = [10, 7 ,23, 99 ,169, 19,11 ,1];
myArray.sort()
document.writeln(myArray);
var myArray = [10, 7, 23, 99, 169, 19, 11, 1];
myArray.sort(function (a, b) {return a- b});
document.writeln(myArray)
Array,slice([begin[.end]])
slice() 메서드는 배열의 일부를 복사하여 새로운 배열로 반환한다. 시작 인덱스가 없으면 0으로 가정한다. 종료 인덱스가 없으면 배열의 끝까지 복사한다.
var numbers = [1,2,3,4,5,6,7,8,9,10];
var newArray = number = number.slice(5);
document.writeln(newArray + "<br>"); // 출력 : 6,7,8,9,10
join(delimeter)
join()은 배열의 요소들을 하나의 문자열로 출력한다. 이 기능은 배열을 서버로 보낼 때, 아주 유용하다. 이때 분리자가 각 요소를 분리하게 된다.
var fruits = ["apple","banana","peach"];
var s = fruits.join("+");
document.writeln(s+"<br>"); // 출력: apple+banana+peach
filter()
filter()메서드는 어떤 조건에 부합하는 요소만을 선택하여 새로운 배열로 만들어서 반환한다. 요소를 선택하는 함수를 작성하여 인수로 전달한다.
var numbers = [10,20,30,40,50];
function isBigEnough(element,index,array){
return (element>= 30);
}
var filtered =numbers.filter(isBigEnough);
document.write("필터링 된 배열 :" +filtered);
2차원배열
자바스크립트에서는 2차원 배열이가능하다 Array 객체는 다른 Array 객체를 포함할 수 있기 때문이다.
var x = [0, 1, 2, 3, 4, 5, 6];
var y= [ x ];
document.writeln(y[0]); // 출력 : 0, 1, 2, 3, 4, 5 6
document.writeln(y[0][2]); // 출력 : 2
2차원 배열을 리터널에서 생성하려면 다음과 같이 해도 된다.
var matrix = [
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
];
alert(matrix[1][1]);