14.JS数组操作实战手册:创建、访问、新增、删除代码示例全收录
目录
一、创建数组
二、获取数组元素
三、新增数组元素
通过修改 length新增
通过下标新增
使用 push进行追加元素
四、删除数组中的元素
一、创建数组
使用
new关键字创建// Array 的 A 要大写
var arr = new Array();
使用字面量方式创建(常用)
var arr = [];
var arr2 = [1, 2, 'haha', false]; // 数组中保存的内容称为 "元素"
注意:JS 的数组不要求元素是相同类型。
这一点和 C, C++, Java 等静态类型的语言差别很大. 但是 Python, PHP 等动态类型语言也是如此.
<script> let array = new Array(); let array1 = [1, 2, 3, "4"] </script>二、获取数组元素
使用下标的方式访问数组元素(从 0 开始)
var arr = ['小猪佩奇', '小羊苏西']; console.log(arr); console.log(arr[0]); console.log(arr[1]); arr[2] = '小猫凯迪'; console.log(arr);如果下标超出范围读取元素,则结果为 undefined
console.log(arr[3]); // undefined console.log(arr[-1]); // undefined注意:不要给数组名直接赋值,此时数组中的所有元素都没了。
新示例:
<script> let array = new Array(); let array1 = [1, 2, 3, "4"] console.log(typeof(array1)) console.log(array1) console.log(array1[2]) // 这个代码放到Java中,会抛出来一个数组越界的异常 console.log(array1[-10]) array1 = "bit" console.log(typeof(array1)) console.log(array1) </script>输出结果:
object (4) [1, 2, 3, "4"] 3 undefined string bit三、新增数组元素
通过修改length新增
相当于在末尾新增元素. 新增的元素默认值为 undefined
var arr = [9, 5, 2, 7]; arr.length = 6; console.log(arr); console.log(arr[4], arr[5]);输出结果:
(6) [9, 5, 2, 7, empty × 2] undefined undefined<script> let array = [1, 2, 3, 4] array.length = 10; console.log(array) array[7] = 8 console.log(array) </script>输出结果:
(10) [1, 2, 3, 4, empty × 6] (10) [1, 2, 3, 4, empty × 3, 8, empty × 2]通过下标新增
如果下标超出范围赋值元素,则会给指定位置插入新元素
var arr = []; arr[2] = 10; console.log(arr)输出结果:
此时这个数组的 0 和 1 都是 undefined
常规的数组赋值如下:
<script> let array = new Array() console.log(array) for(i = 0; i < 100; i++) { array[i] = i; } console.log(array) </script>就此可以通过下标为数组新增元素:
<script> let array = new Array() console.log(array) for(i = 0; i < 10; i++) { array[i] = i; } array[20] = 20; console.log(array) </script>使用
push进行追加元素代码示例:给定一个数组,把数组中的奇数放到一个 newArr 中。
<script> var arr = [9, 5, 2, 7, 3, 6, 8]; var newArr = []; for (var i = 0; i < arr.length; i++) { if (arr[i] % 2 != 0) { newArr.push(arr[i]); } } console.log(newArr); </script><script> let array = new Array() console.log(array) for(i = 0; i < 10; i++) { array[i] = i; } let new_array = new Array() // 将array中所有的元素追加到new_array中 for(i = 0 ;i < array.length; i++) { new_array.push(array[i]) } console.log(new_array) </script>四、删除数组中的元素
使用splice方法删除元素
var arr = [9, 5, 2, 7]; // 第一个参数表示从下表为 2 的位置开始删除,第二个参数表示要删除的元素个数是 1 个 arr.splice(2, 1); console.log(arr); // 结果 [9, 5, 7]目前咱们已经用到了数组中的一些属性和方法。
arr.length, length 使用的时候不带括号, 此时 length 就是一个普通的变量(称为成员变量, 也叫属性)
arr.push(), arr.splice() 使用的时候带括号, 此时就是一个函数(也叫做方法)
<script> let array = new Array() console.log(array) for(i = 0; i < 10; i++) { array[i] = i; } let new_array = new Array() // 将array中所有的元素追加到new_array中 for(i = 0 ;i < array.length; i++) { new_array.push(array[i]) } console.log(new_array) new_array.splice(1, 1) console.log(new_array) </script>