>웹 프론트엔드 >JS 튜토리얼 >JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

青灯夜游
青灯夜游원래의
2021-08-17 12:14:342784검색

이전 글 "JS 배열 학습: 모든 요소를 ​​지우는 4가지 방법(상세 코드 설명) "에서는 배열 요소를 모두 삭제했습니다. 즉, 배열을 지우는 4가지 방법입니다. JavaScript 배열에 대한 연구를 계속해서 1차원 배열과 2차원 배열의 생성 및 액세스에 대해 이야기하고 다차원 배열에 대한 간단한 논의를 확장해 보겠습니다.

먼저 1차원 배열이 어떻게 생성되고 접근되는지 살펴보겠습니다.

1차원 배열 생성 및 액세스

1차원 배열을 만드는 방법에는 "배열 직접 수량"과 "Array() 함수"의 두 가지 방법이 있습니다.

1. 배열 리터럴 "[]"[]

1)我们可以直接使用“[]”来给一个变量赋值,“[]”中可以是空的,那么就是定义空数组:

var a = [];  //空数组

使用数组的length属性来获取数组长度,返回值会为0。

console.log(a.length);

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

此时我们可以使用 数组名[下标]=值 的形式给空数组赋值

a[0]=1;
a[1]="hello";

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

数组下标不仅仅可以是数字,也可以为文本字符串,那么此时数组就是一个关联数组

a["姓名"]="张三";
a["年龄"]=23;

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

如果数组的下标值超出范围,如负数、浮点数、布尔值、对象或其他值,JavaScript 会自动把它转换为一个字符串,并定义为关联数组。

2)也可以直接定义数组并初始化

直接在“[]”中包含多个值列表,值之间用逗号分隔即可。

var a = [1, 2, 3];  //包含具体元素的数组

使用数组的length属性来获取数组长度,返回值就是具体定义的数组元素数目。

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

2、使用new Array()构造数组

1)如果直接调用 Array() 函数,不传递参数,可以创建一个空数组。

var a = new Array();  //空数组

使用数组的length属性来获取数组长度,返回值会为0。

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

2)如果调用Array() 函数时,传递多个值(值之间用逗号分隔),可以创建一个实数组。

var a = new Array(1,2,3);

3)如果调用Array() 函数时,只传递一个数值参数,那么就表示只定义了数组的长度,即包含元素的个数;数组元素为空,每个元素的值默认值为 undefined。(数组中元素值没有定义,在语法上两个逗号之间没有任何值的元素,被称为空位元素)

var a = new Array(3);

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

像这种包含一个或多个空位元素的数组,也被称为空位数组。

var a = [1, , 2];
var a = [1, 2, 3];
delete a[1];

也可产生空位元素,形成空位数组。

3、访问数组

访问数组就是访问数组元素。我们可以使用 数组名[下标表达式]

1)

"[]"를 직접 사용하여 값을 할당할 수 있습니다. 변수, "[]"는 비어 있을 수 있으며, 빈 배열을 정의합니다:

delete a[1]

배열의 길이 속성을 사용하여 배열의 길이를 얻으면 반환 값은 0이 됩니다.

var a = [];  //空数组
a[0]=1;
a[2]="hello";

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

이때

배열 이름[subscript]=값

형식을 사용하여 빈 배열에 값을 할당할 수 있습니다
JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

console.log(a[0]);  //读取第一个元素,返回值为1
console.log(a[1]);  //读取第二个元素,返回值为undefined
console.log(a[2]);  //读取第三个元素,返回值为hello

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

배열 첨자는 숫자일 뿐만 아니라 텍스트일 수도 있습니다. 문자열이면 이 배열은 연관 배열입니다
var a = [];
a[0,0] = 1;
a[0,1] = 2;
a[1,0] = 3;
a[1,1] = 4;

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

음수, 부동 소수점 수, 부울 값, 객체 또는 기타 값과 같이 배열의 첨자 값이 범위를 벗어나면 JavaScript가 자동으로 이를 다음으로 변환합니다. 문자열로 만들고 이를 연관 배열로 정의합니다.

2)배열을 직접 정의하고 초기화할 수도 있습니다
"[]"에 직접 여러 값 목록을 포함하고, 값을 다음과 같이 구분합니다. 쉼표.

var a = [  //定义二维数组
    [1.1, 1.2],
    [2.1, 2.2]
];
배열의 길이 속성을 사용하여 배열의 길이를 가져옵니다. 반환 값은 특별히 정의된 배열 요소 수입니다.

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

2.

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스new Array()를 사용하여 배열을 생성합니다.

🎜🎜🎜🎜1)🎜매개변수를 전달하지 않고 Array() 함수를 직접 호출하면 빈 배열을 만들 수 있습니다. 🎜
var a = new Array(
[1.1, 1.2],
[2.1, 2.2]);  //定义二维数组
🎜배열의 길이 속성을 사용하여 배열의 길이를 얻으면 반환 값은 0이 됩니다. 🎜🎜JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스🎜🎜🎜 2)🎜Array() 함수를 호출할 때 여러 값(쉼표로 구분)을 전달하면 실제 배열을 만들 수 있습니다. 🎜
数组名[下标表达式1] [下标表达式2]

数组名[下标表达式1] [下标表达式2] [下标表达式3]

...

数组名[下标表达式1] [下标表达式2] [下标表达式3]...[下标表达式N]
🎜🎜3)🎜Array() 함수를 호출할 때 하나의 숫자 매개변수만 전달하면 배열의 길이만 정의된다는 의미입니다. 즉, 배열 요소에 포함된 요소의 개수가 비어 있다는 의미입니다. 각 요소의 값은 기본값이 정의되지 않습니다. (배열의 요소 값은 정의되지 않으며, 문법적으로 두 쉼표 사이에 값이 없는 요소를 간격 요소라고 합니다) 🎜rrreee🎜JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스🎜🎜하나 이상의 간격 요소를 포함하는 이와 같은 배열을 간격 배열이라고도 합니다. 🎜
rrreeerrreee🎜는 간격 요소를 생성하여 간격 배열을 형성할 수도 있습니다. 🎜
🎜🎜🎜3. 배열에 액세스🎜🎜🎜🎜배열에 액세스한다는 것은 배열 요소에 액세스한다는 의미입니다. 🎜배열 이름 [아래 첨자 표현]🎜 형식을 사용하여 배열에 액세스하고 읽고 쓸 수 있습니다. 🎜🎜참고: 아래 첨자 표현식은 값이 음수가 아닌 정수인 표현식입니다. 🎜🎜예를 들어 위의 🎜rrreee🎜에서는 delete 키워드를 사용하여 a 배열에서 아래 첨자가 1인 요소를 삭제합니다(즉, 두 번째 요소를 삭제합니다). 🎜🎜또한: 🎜rrreee🎜는 a 배열에서 첨자 0과 2가 있는 요소에 각각 값을 할당하는 것입니다. 첨자 1이 있는 요소의 값이 할당되지 않으면 정의되지 않습니다. 지정된 배열 요소를 출력하려면 다음 형식을 사용할 수도 있습니다.🎜rrreee🎜🎜🎜🎜🎜2차원 배열 생성 및 액세스🎜🎜🎜JavaScript는 2차원 배열을 직접 지원하지 않지만 값을 설정할 수 있습니다. 배열 요소의 배열이 배열과 같도록 하여 2차원 배열의 구조를 시뮬레이션할 수 있습니다. 🎜🎜🎜🎜1. 2차원 배열 정의 🎜🎜🎜🎜🎜 2차원 배열 정의 방법 1: 🎜🎜rrreee🎜🎜2차원 배열 정의 방법 2: 🎜🎜rrreee🎜🎜🎜

定义二维数组的方法3:

var a = new Array(
[1.1, 1.2],
[2.1, 2.2]);  //定义二维数组

JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스

按照这种思想,如果二维数组中每个元素的值也为数组,则可以模拟三维数组,以此类推,通过数组嵌套的形式可以定义多维数组。

2、访问二维数组

访问二维数组甚至三维数组、多维数组的方法,和访问一维数组的方法一样,都是使用中括号进行访问:

数组名[下标表达式1] [下标表达式2]

数组名[下标表达式1] [下标表达式2] [下标表达式3]

...

数组名[下标表达式1] [下标表达式2] [下标表达式3]...[下标表达式N]

更高维度的数组以此类推。

好了,就说到这里了,有需要的可以看:javascript高级教程

위 내용은 JS 배열 학습: 1차원 및 2차원 배열 생성 및 액세스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.