> 웹 프론트엔드 > 프런트엔드 Q&A > 자바스크립트 배열의 용도는 무엇인가요?

자바스크립트 배열의 용도는 무엇인가요?

青灯夜游
풀어 주다: 2022-09-14 12:07:48
원래의
2464명이 탐색했습니다.

JavaScript에서 배열은 대량의 데이터를 저장하는 데 사용되는 정렬된 데이터 모음입니다. 여러 데이터를 한 번에 저장할 수 있으며 배열을 사용하여 배열의 길이를 동적으로 조정할 수 있습니다. 프로그램 코드를 크게 단순화하여 애플리케이션 효율성을 향상시킵니다.

자바스크립트 배열의 용도는 무엇인가요?

이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.

JavaScript 배열(Array)은 정렬된 데이터의 모음입니다. 배열의 각 구성원을 요소(Element)라고 하며, 각 요소의 이름(키)을 배열 인덱스(Index)라고 합니다. 배열의 길이는 유연하고 읽기 및 쓰기가 가능합니다. 즉, 배열의 길이를 동적으로 조정할 수 있습니다.

어레이의 역할: 대량의 데이터 저장, 여러 데이터를 한 번에 저장할 수 있습니다. 배열을 사용하면 프로그램 코드를 대폭 단축하고 단순화할 수 있어 애플리케이션의 효율성이 높아집니다.

JavaScript에서는 Array 객체를 사용하여 배열을 정의할 수 있습니다. 또한 Array 객체는 배열과 관련된 다양한 속성과 메서드도 제공합니다.

배열의 정의: Array 약어: arr

Array는 JS의 데이터 컨테이너입니다. 참조 유형 중 하나입니다.

기능은 매우 간단하며, 여러 데이터를 보관하는 데 사용되며, 배열의 길이를 동적으로 조정할 수 있습니다. 배열에 의해 생성된 메소드: 创 리터럴 양


생성된 함수

    리터럴 합성:
  • var 배열 이름 = [Member 1, Member 2, Member 3,. 배열 요소는 쉼표로 구분됩니다.

생성자 구문:

var array name = new Array(member 1, member 2, member 3, ... ) (적어도 두 개 이상의 배열 요소가 있는 경우) ;) 작은 버그: 매개변수가 하나만 있고 매개변수 유형이 숫자

인 경우 배열의 길이로 간주됩니다

;

자바스크립트 배열의 용도는 무엇인가요?var arr = new Arry(5); console.log(arr); 출력 결과는 다음과 같습니다.

var array name = new Array() ;

var arr = new Array ();//새 빈 배열 만들기 Array 0, A는 다음과 같아야 합니다. 대문자 배열은 두 부분으로 구성됩니다. 1: 인덱스(하위 첨자라고도 함),

하첨자는 0부터 시작합니다.

2 멤버(배열 요소):

멤버에는 제한이 없습니다. 모든 유형의 데이터일 수 있습니다.문자열, 숫자, 부울 값, 정의되지 않음, null 또는 배열일 수 있습니다.


배열 요소 가져오기: 배열 값:

배열 이름 [subscript] ; 아래 첨자는 0부터 시작합니다.

// 형식: 배열 이름 [subscript] 아래 첨자는 인덱스라고도 합니다.

/

자바스크립트 배열의 용도는 무엇인가요?/ 기능: Get 배열의 아래 첨자에 해당하는 값입니다. 아래 첨자가 없으면 정의되지 않은 값이 반환됩니다.

var arr = ['red',, 'green', 'blue'];

0 1 2 console.log(

arr[0]


) ; // red console .log(arr[2]
); // blue aconsole.log(

arr[3]

) // 이 배열의 최대 첨자는 2이며 해당 배열 요소는 없습니다. 따라서 출력 결과는
인덱스를 통해 멤버 추가/수정:

// 构造函数定义一个数组
var arr = new Array('张三', '李四', '王五', '赵六')

// 添加成员
arr[4] = '龚七'
console.log(arr)  //张三', '李四', '王五', '赵六','龚七'
// 修改成员
arr[0] = '王老五'
console.log(arr)  //'王老五', '李四', '王五', '赵六'
로그인 후 복사
특별한 경우: 인덱스를 통해 여러 멤버를 설정하면 중간에 연결이 끊어지고 비어 있게 됩니다. var arr = ["a" , "b"];
arr[5] = "좋음";console.log(arr) //


 遍历数组:

 자바스크립트 배열의 용도는 무엇인가요?

자바스크립트 배열의 용도는 무엇인가요?


 数组的属性length,就是数组成员的个数;

数组名.length

 var  arr = [1, 2, 3, 4, 5, 6, 7, 8];

length表示数组的长度 它会跟着数组实时发生变化(动态监测数组元素的个数)

 console.log(arr.length)   //数组成员的个数: 8

 length属性可读可写  它也会影响数组的成员个数 但是我们一般不会主动修改该属性;

var arr = [1, 2, 3, 4, 5, 6, 7, 8];

arr.length = 3;

console.log(arr.length);    

console.log(arr);

자바스크립트 배열의 용도는 무엇인가요?

자바스크립트 배열의 용도는 무엇인가요?

자바스크립트 배열의 용도는 무엇인가요?


数组元素求和,求平均值:

자바스크립트 배열의 용도는 무엇인가요?

求数组元素的最大值:

자바스크립트 배열의 용도는 무엇인가요?

数组元素转字符串,并分割开:    推荐: 数组名.join("连接符")

자바스크립트 배열의 용도는 무엇인가요?

求数组中大于10的成员,并挑选出来:

1자바스크립트 배열의 용도는 무엇인가요?

1자바스크립트 배열의 용도는 무엇인가요?

数组元素的倒叙:

1자바스크립트 배열의 용도는 무엇인가요?


数组元素的增删改查;

unshift   头增       数组名.unshift("value")

作用:头部增加 (可以增加多个)

参数:添加的成员,可以是多个;

返回值:数组的新长度

var arr = ['张三', '李四', '王五', '赵六'];
var result = arr.unshift('王二',刘一)
console.log(result); // 6
console.log(arr); 
// ["王二", "刘一","张三", "李四", "王五", "赵六"]
로그인 후 복사

push   尾增   数组名.push("value")

作用:尾部增加 (可以增加多个)

参数:添加的成员,可以是多个;

返回值:数组的新长度

var arr = ['张三', '李四', '王五', '赵六'];
var result = arr.push('王二',"刘一")
console.log(result); // 6
console.log(arr); // ["张三", "李四", "王五", "赵六", "王二","刘一"]
로그인 후 복사

shift   头删    数组名.shift()   只删除第一个,()括号内为空;

作用:删除数组的头部第一项

参数:无;

返回值:被删除的那一项

var arr = ['张三', '李四', '王五', '赵六'];
var result = arr.shift()
console.log(result); // 张三
console.log(arr) //  ['李四', '王五', '赵六'];
로그인 후 복사

 pop   尾删    数组名.pop()   只删除最后一个,()括号内为空;

作用:删除数组最后一项;

参数:无;

返回值:被删除的那一项

var arr = ['张三', '李四', '王五', '赵六'];
var result = arr.pop();
console.log(result); // 赵六
console.log(arr) //["张三", "李四", "王五"]
로그인 후 복사

concat      拼接,合并;   数组名.concat("value")

作用:合并

参数:任意个、任意类型

返回值:一个新的合并后的数组

特点:没有改变原来的数组

var arr1 = [1, 2, 3];

var arr2 = [4, 5, 6];

var newArr = arr1.concat(arr2, "good", true, 1);

console.log(arr1); // 1,2,3

console.log(arr2); //4,5,6

console.log(newArr); //1, 2, 3, 4, 5, 6, "good", true, 1

slice  截取     数组名.slice(start,end)   参数是下标; 包括开头,不包括结尾;

slice的本质是复制(浅复制) 

作用:截取

参数:

  1. 没有参数 截取全部

  2. 一个参数 从指定位置截取到最后(包括最后)

  3. 两个参数 从指定开始位置截取到指定的结束位置 1. 这两个参数都是下标 2. 开始位置(包含) 3. 结束位置(不包含) 4. 第二个参数要比第一个大;

  4. 参数可以是负数,负数是从后面开始,最后一个是-1;

特点:不改变原数组

没有参数 (截取全部的)
var arr = ['张三', '李四', '王五', '赵六'];
var arr1 = arr.slice();
console.log(arr1)  //  ["张三", "李四", "王五", "赵六"]

一个参数 (从指定位置截取到最后(包括最后))
var arr = ['张三', '李四', '王五', '赵六'];
var arr2 = arr.slice(1);
console.log(arr2) // ["李四", "王五", "赵六"]

两个参数 (包括开始,不包括结尾)
var arr = ['张三', '李四', '王五', '赵六'];
var arr3 = arr.slice(1, 3);
console.log(arr3) // ["李四", "王五"]

参数为负数; (还是第二个参数要比第一个大)

var arr = ['张三', '李四', '王五', '赵六','刘一'];
var arr3 = arr.slice(-3, -1);
console.log(arr3) // ["王五","赵六"]

PS: 如果参数是负数 那么表示从后往前数 最后一个值是-1

 splice    操作数组     数组名.splice(参数1,参数2,参数3)

作用:用于操作数组成员

参数:

  • 参数1:操作开始位置; (从第几个索引号后开始, 可以看成直接从顺序的第几个后开始的)
  • 参数2:删除的成员个数; (为0,是添加)
  • 参数3:从第三个参数开始是添加的成员;

返回值:被删除的那些成员组成的数组

特点:会改变原数组

// 删除

var arr = ['张三', '李四', '王五', '赵六'];
var result = arr.splice(1, 2)
console.log(result); // ["李四", "王五"]
console.log(arr); // ["张三", "赵六"]   
----------------------------------------------------------------------
// 插入   第二个参数为0;

var arr = ['张三', '李四', '王五', '赵六'];
var  result = arr.splice(2, 0, '小绵羊');
console.log(result); // []
console.log(arr) // ["张三", "李四", "小绵羊", "王五", "赵六"]
------------------------------------------------------------------------
// 替换   第一个参数从哪里开始, 第二个参数删除几个,第三个参数...添加的新成员;

var arr =['张三', '李四', '王五', '赵六'];
var result = arr.splice(2, 1, '小绵羊', '大绵羊');
console.log(result); // ["王五"]
console.log(arr) // ["张三", "李四", "小绵羊", "大绵羊","赵六"]
로그인 후 복사

-----------------------------------------------------------------------------------------------

如果只有一个参数 则第二个参数默认为删除所有;

var arr = ['张三', '李四', '王五', '赵六'];

var result = arr.splice(2);

console.log(result);  // ["王五","赵六"]

console.log(arr) // ["张三", "李四"]

indexOf      数组名.indexOf("数组元素")

作用: 查找

参数:被查找的成员;

返回值:下标(索引);      若有该成员返回该索引; 若没有就返回-1

 var arr = ["a", "b", "c", "d", "e", "f"];

var idx = arr.indexOf("d"); //3

var idx = arr.indexOf("aa"); //-1

console.log(idx);

 join    数组名.join("连接符")

作用:转字符串

返回值:数组元素变成字符串类型,链接符相连;

参数: 拼接符号(可选)

数组名.join()  不写内容,默认是逗号,  ;

数组名.join(''), '' 没有空格隔开, 数组直接相连;

数组名.join('   ')  空格隔开, 空格

数组名.join('*')

var arr =['张三', '李四', '王五', '赵六'];
var str = arr.join();
console.log(str); // 张三,李四,王五,赵六

var str1 = arr.join('+');
console.log(str1); // 张三+李四+王五+赵六 

var str2 = arr.join('❤');
console.log(str2); // 张三❤李四❤王五❤赵六
로그인 후 복사

//返回值是数组元素变成字符串,并连接符相连;

 reverse  数组倒叙     数组名.reverse()   括号内不跟参数;

作用:将数组的成员倒序

返回值:倒叙的原数组

参数:无

特点:会改变原数组

var arr =['张三', '李四', '王五', '赵六'];
console.log(arr) // ["张三", "李四", "王五", "赵六"]

var arr1 = arr.reverse();
console.log(arr1) // ["赵六", "王五", "李四", "张三"]
console.log(arr === arr1) // true
로그인 후 복사

console.log(arr)  // ["赵六", "王五", "李四", "张三"]     //会改变原数组;

其他方法:

1자바스크립트 배열의 용도는 무엇인가요?

sort      排序         数组名.sort(函数)  升序或降序

作用:将数组成员按照指定规则排序

返回值:排序后原数组

参数:规则函数; 不跟参数(//不跟参数,会先转为字符串,然后按照ascii码排序首字母排;)

特点:会改变原数组

var arr = [89, 96, 45, 66, 78, 3, 100, 1];

arr.sort(function(a, b) {

return a - b;     // 升序

        });

 console.log(arr);  //   [1, 3, 45, 66, 78, 89, 96, 100];

-------------------------------------------------------------------------

var arr = [89, 96, 45, 66, 78, 3, 100, 1];

arr.sort(function(a, b) {

return b - a;     // 降序

        });

 console.log(arr);  //   [100, 96, 89, 78, 66, 45, 3, 1];

--------------------------------------------------------------

var arr = [89, 96, 45, 66, 78, 3, 100, 1];

arr.sort();                //不跟参数,会先转为字符串,然后按照ascii码排序首字母排;

console.log(arr);    //[1, 100, 3, 45, 66, 78, 89, 96]

交换两个变量的值

var a = 4;
var b = 5;

// 交换两个变量的值要借助第三个变量
var c = b;
b = a;
a = c;

console.log(a); // 5
console.log(b); // 4
로그인 후 복사

 数组的冒泡排序

for (var j = 0; j
  for (var i = 0; i
    if (arr[i] > arr[i + 1]) {
      var temp = arr[i];
      arr[i] = arr[i + 1];
      arr[i + 1] = temp;
    }
  }
}

----------------------------------------------------------

要排序 就要比较大小  

먼저 첫 번째 숫자를 가져와서 두 번째 숫자와 비교하세요. 첫 번째 숫자가 더 크면 위치를 바꾸세요. 비교 후 배열의 두 번째 위치에 있는 숫자가 첫 번째 숫자보다 커야 합니다. 두 번째와 세 번째 숫자 비교 후 배열의 세 번째 숫자는 두 번째 위치의 숫자보다 커야 합니다

그리고 한 라운드 비교 후에는 마지막 숫자가 가장 커야 합니다

두 번째 라운드에서 , 두 번째 라운드 이후에는 두 번째로 큰 숫자가 결정될 수 있습니다.

세 번째 라운드...

끝까지.

// // // 외부 루프는 실행 횟수를 결정합니다. 내부 루프

for (var j = 0; j

                                                           ; i

                                                             교환 ~           r[ i + 1];

                                                    arr[i + 1] = t

em

p

;

                                                                         배열이기도 하며 2차원 배열이라고도 합니다.

1차원 배열: [1, 2, 3, 4, 5, 6]

2차원 배열: [[1, 2, 3, 4, 5, 6],[1 , 2 , 3, 4, 5, 6],

[1, 2, 3, 4, 5, 6]

...

]


배열을 지우는 방법:

/ / 방법 1 권장

arr = [ ];

// 방법 2

arr.length = 0;

// 방법 3

arr.splice(0, arr.length);

[추천 학습:

javascript 고급 튜토리얼]

위 내용은 자바스크립트 배열의 용도는 무엇인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿