>  기사  >  웹 프론트엔드  >  JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법

JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법

青灯夜游
青灯夜游원래의
2021-08-19 12:05:1211728검색

이전 글 "JS 배열 학습: 머리 또는 꼬리 요소를 제거하는 방법"에서는 배열의 시작 또는 끝 요소를 삭제하는 방법을 소개했습니다. 계속해서 JavaScript 배열을 배우고 연습하고 배열 첨자를 기반으로 요소를 삭제하는 방법을 살펴보겠습니다. 관심 있는 친구들은 이에 대해 배울 수 있습니다~

우리 모두는 배열의 각 요소에 일련 번호가 있다는 것을 알고 있으며 이 일련 번호는 Starting에서 시작됩니다. 0부터 인덱스라고 합니다. 이 배열 첨자에 따르면 배열 이름 [첨자] 형식을 사용하여 지정된 첨자의 요소에 액세스할 수 있습니다. 数组名[下标] 的形式来访问指定下标的元素。

访问到指定元素后,就可以利用 delete运算符 来删除该元素,但数组长度不会发生改变;删除后的该元素会变为空位元素,

var arr=new Array("香蕉","苹果","梨子","橙子","橘子","榴莲");
console.log(arr);

delete arr[1];  //删除下标为1的元素(第二个元素)
console.log(arr);

JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법

空位元素可以读写,length 属性不排斥空位,空元素位返回值为 undefined

console.log(arr[1]);

JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법

说明:空元素与元素的值为 undefined 是两个不同的概念,即使空元素的返回值也是 undefined。JavaScript 在初始化数组时,只有真正存储有值得元素才可以分配内存。

利用delete运算符一次只能删除一个数组元素,且因为不改变数组长度,我们就无法通过length属性来观察这个数组的变化了。那么如果想要在指定下标位置删除一个或多个元素,且是真正的删除这些元素,数组长度要有改变,这要怎么做呢?

可以使用 splice() 方法。之前就说过了splice() 是一个强大的方法,我们已经了解了怎么使用它来插入元素,这次来了解一下怎么使用splice()来在指定下标位置删除一个或多个元素。

删除元素的语法:

array.splice(index,howmany)
  • 第1个参数 index 可以指定起始下标位置(即开始删除元素的位置);

  • 第2个参数 howmany 指定应该删除的元素数目(即需要删除的一个或多个元素)。

我们通过下面的例子来具体看看:

var arr= [1,2,3,4,5];
console.log(arr);

arr.splice(1,2);
console.log(arr);

可以看出:使用arr.splice(1,2)从下标1的位置(数组第2个元素)开始删除2个元素,也就是删除了arr[1]arr[2]

지정된 요소에 액세스한 후 delete 연산자를 사용하여 요소를 삭제할 수 있지만 배열의 길이는 삭제된 요소가 비어 있게 됩니다. ,

var arr= [1,2,3,4,5];
console.log(arr);

arr.splice(0,2);
console.log(arr);
JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법

빈 요소는 읽고 쓸 수 있습니다. 빈 요소의 반환 값은 정의되지 않습니다.

var arr= [1,2,3,4,5];
console.log(arr);

//从倒数第二个元素开始,截取两个元素
arr.splice(-2,2);
console.log(arr);
    JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법
  • 설명: 빈 요소와 값이 정의되지 않은 요소는 서로 다른 개념입니다. 반환값도 빈 요소는 정의되지 않습니다. JavaScript가 배열을 초기화할 때 실제로 중요한 요소를 저장하는 경우에만 메모리를 할당할 수 있습니다.

  • 삭제 연산자는 한 번에 하나의 배열 요소를 삭제하는 데만 사용할 수 있으며 배열의 길이는 변경되지 않으므로 길이 속성을 통해 배열의 변경 사항을 관찰할 수 없습니다. 따라서 지정된 아래 첨자 위치에서 하나 이상의 요소를 삭제하고 실제로 이러한 요소를 삭제하려면 배열 길이를 변경해야 합니다.

splice() 메소드를 사용할 수 있습니다. 앞서 말했듯이 splice()는 요소를 삽입하는 방법을 이미 배웠습니다. 이번에는 splice()를 사용하여 지정된 첨자에서 하나 이상의 요소를 삭제하는 방법을 알아봅니다. 위치. 요소. JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법

요소 삭제 구문:
    rrreee
  • 첫 번째 매개변수 index는 시작 첨자 위치(즉, 요소가 삭제되는 위치)를 지정할 수 있습니다.

JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법두 번째 매개변수 howmanity는 제거해야 하는 요소 수(즉, 제거해야 하는 하나 이상의 요소)를 지정합니다.

다음 예를 자세히 살펴보겠습니다.

rrreee🎜 다음을 볼 수 있습니다. arr.splice(1,2)를 사용하여 아래 첨자 위치부터 시작합니다. 1(배열 2번 요소)은 2개의 요소를 삭제하기 시작합니다. 즉, arr[1]arr[2]가 삭제되므로 출력 결과는 다음과 같습니다. 🎜 🎜🎜🎜🎜splice() 메소드를 사용하면 배열의 시작과 끝에서 요소를 삭제하는 작업을 구현할 수도 있습니다. 🎜🎜🎜🎜배열의 시작 부분에서 요소를 삭제하려면 다음 값을 설정하면 됩니다. 메소드의 첫 번째 매개변수 인덱스를 0🎜🎜🎜rrreee🎜 🎜🎜🎜🎜🎜배열 끝의 요소를 삭제하려면 이 메소드의 첫 번째 매개변수 인덱스 값을 음수로 설정한 다음 절대값에 따라 배열의 오른쪽에서 왼쪽으로 배치됩니다. 두 번째 매개변수는 인덱스 값과 같아야 합니다. 🎜🎜🎜rrreee🎜🎜🎜🎜그렇습니다. 필요한 경우 다음 내용을 읽어보세요. 🎜javascript 고급 튜토리얼🎜🎜

위 내용은 JS 배열 학습: 배열 첨자를 기반으로 요소를 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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