프로그래밍 언어에서 배열 (배열)은 매우 일반적인 기능입니다. 그것들은 여러 숫자 값을 동시에 저장하는 데 사용할 수있는 특수 변수입니다. 그러나 JavaScript와 관련하여 탐험해야 할 다른 많은 것들이 있습니다.
이 기사에서는 JavaScript 배열의 세 가지 덜 일반적인 기능에 대해 설명합니다.
1. 배열에 사용자 정의 속성을 추가하십시오
온라인으로 JavaScript 배열에 대한 정의를 검색 할 때 거의 모든 사람이 배열의 정의와 동일한 정의를 가지고 있음을 알 수 있습니다.
실제로, 우리가 JavaScript로 처리하는 모든 것은 객체로 간주 될 수 있습니다. JavaScript에는 두 가지 유형의 데이터가 있습니다. 기본 유형은 객체 유형이지만 기본 유형은 기본적으로 객체 유형에 포함됩니다.
배열, 함수 및 날짜는 모두 JavaScript의 사전 정의 된 객체이며, 모두 방법, 속성 및 각각의 표준화 된 구문을 포함합니다.
JavaScript 어레이에는 다음과 같은 세 가지 속성이 있습니다.
1) 배열의 인덱스도 속성입니다.
2) 내장 속성
3) 사용자 정의 속성을 직접 추가 할 수 있습니다
처음 두 가지 속성은 모든 사람에게 잘 알려져 있습니다. 당신은 매일 그것들을 사용할 수 있지만, 여전히 여기에 몇 단어를 더 말하고 싶고, 어레이에 사용자 정의 속성을 추가하는 방법에 대해 이야기합시다.
지수를 속성으로 취하십시오
JavaScript 어레이는 var ary = [ "Orange", "Apple", "Lychee"]와 같은 Square Bracket Syntax를 사용할 수 있습니다.
배열 요소의 인덱스는 기본적으로 속성이며, 그 속성의 이름은 항상 비 음성 정수입니다.
배열의 인덱스 요소 쌍은 객체의 키 값 쌍과 유사합니다. 인덱스는 다른 내장 특성과 달리 배열 객체의 고유 한 기능으로, Ary [3] = "Peach";
내장 속성
배열에는 Array.length와 같은 내장 속성이 있습니다. 이 길이 속성에는 배열의 길이를 나타내는 정수 값이 포함되어 있습니다.
일반적으로, 내장 속성은 종종 배열과 같은 사전 정의 된 JavaScript 객체에서 찾을 수 있습니다. 내장 속성은 내장 된 방법과 결합되며,이 방법은 일반적인 객체를 사용자 정의하여 다양한 요구를 충족시킬 수 있습니다.
내장 속성에 액세스 할 때는 두 개의 구문을 사용할 수 있습니다 : Object.key 또는 Object [ "키"]. 즉, 배열의 길이를 얻을 때 Ary [ "길이"]로 쓸 수 있습니다.
배열 객체에 대한 사용자 정의 속성을 만듭니다
이제 어레이에 사용자 정의 속성을 추가하는 방법에 대해 이야기 해 봅시다. 배열은 다른 인덱스에 다른 종류의 값을 저장하는 사전 정의 된 객체입니다.
일반적으로 배열에 사용자 정의 속성을 추가 할 필요가 없습니다. 이러한 이유로, 우리가 처음 JavaScript를 배웠을 때, 우리는 배열에 속성을 추가 할 수 있다고 아무도 말하지 않았습니다. 실제로 일반적인 개체를 취급하는 것처럼 키 값 쌍을 배열에 추가하려면 일반 객체를 사용하여 목표를 달성 할 수도 있습니다. 그러나 이것은 특별한 경우가 전혀 없다고 말하는 것은 아닙니다. 어떤 경우에는 배열이 객체라는 사실을 활용할 수 있으며 하나 이상의 사용자 정의 속성을 추가 할 수 있습니다.
예를 들어, "Kind"또는 "Class"요소를 인식하는 배열에 사용자 정의 속성을 추가 할 수 있습니다. 자세한 내용은 다음 예를 참조하십시오.
var ary = [ "Orange", "Apple", "lychee"]; ary.itemclass = "과일"; console.log (ary + "는" + ary.itemclass);
배열에 추가하는 사용자 정의 속성은 셀 수 있습니다. 즉, in과 같은 루프로 선택할 수 있습니다.
2. 배열 요소의 루프
"나는 이것을 오랫동안 알고있었습니다." 맞습니다. 배열 요소를 색인화하는 방법을 이미 알고 있습니다. 그러나 "배열 요소의 루핑"이라는 문장은 우리가 실제로 루프가 배열의 색인이기 때문에 약간 추상적이라고 생각할 수 있습니다.
배열 인덱스는 모두 음이 아닌 정수로 구성되므로 일반적으로 정수 값을 반복하기 위해 배열의 전체 길이까지 시작한 다음 해당 반복 값을 사용하여 특정 인덱스에 따라 배열 요소를 얻습니다.
그러나 ECMAScript6이 나타나기 때문에 더 이상 배열 값에서 인덱스와 루프를 직접 신경 쓰지 않으며이 작업은 For Loop을 사용하여 수행 할 수 있습니다.
배열에서, for ... of loop은 인덱스의 순서에 따라 배열 요소를 루프 할 수 있습니다. 다시 말해, 인덱스 반복을 제어하고 주어진 인덱스에 따라 기존 배열 값을 얻을 수 있습니다. 이 루프는 모든 배열 요소를 루프하고 사용하려는 경우 매우 실용적입니다.
var ary = [ "Orange", "Apple", "Lychee"]; for (ary of ary) {console.log (item);} 비교를 위해, 정규 루프와 함께, 우리는 값을 출력 대신 인덱스를 얻습니다. var ary = [ "Orange", "Apple", "Lychee"]; for (var item = 0; item <ary.length; item ++) {console.log (item);}3. 요소 수는 길이와 같지 않습니다.
일반적으로 배열 길이에 대해 이야기 할 때 길이는 배열 값 수 또는 배열에 수동으로 설정 한 길이라고 생각합니다. 그러나 실제로 배열의 길이는 그 안에있는 가장 큰 기존 인덱스에 따라 다릅니다.
길이는 매우 유연한 속성입니다. 배열의 길이를 조정했는지 여부에 관계없이 배열에 새 값을 계속 추가하는 한 길이도 증가합니다.
var ary = []; ary.length = 3; console.log (ary.length); ary [5] = "abcd"; console.log (ary.length);
위의 예에서는 배열의 인덱스 5에 하나의 값 만 지정한 다음 길이가 6이된다는 것을 알 수 있습니다. 이제 인덱스 5에 값을 추가하면 배열이 자동으로 인덱스 0-4를 생성한다고 생각되면 추측이 잘못됩니다. 배열에 존재 해야하는 색인 0-4가 없습니다. IN 연산자를 사용하여 볼 수 있습니다.
var ary = []; ary.length = 3; console.log (ary.length); ary [5] = "abcd"; console.log (ary.length); console.log (Ary in ary);
위의 Ary 배열은 우리가 희소 배열로 만들어집니다. 이 배열의 인덱스는 지속적으로 생성되지 않으며 인덱스 사이에 공기가 있습니다. 희소 배열의 반대는 조밀 한 배열입니다. 밀도가 높은 어레이의 인덱스는 지속적으로 생성되며 요소의 수는 길이와 같습니다.
배열의 길이 속성을 사용하여 숫자를 단축하는 데 사용될 수있어 배열의 최대 인덱스 수가 항상 배열 자체보다 작습니다. 기본적으로 길이 값은 항상 가장 많은 인덱스 수보다 크기 때문입니다.
아래의 예에서, 당신은 내가 인덱스 5의 요소를 커뮤니티로 커뮤니티로 줄이는 방법을 사용했음을 알 수 있습니다.
var ary = []; ary.length = 3; console.log (ary.length); ary [5] = "abcd"; console.log (ary.length); ary.length = 2; console.log (ary.length); console.log (ary [5]);
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.