本文 GitHub github.com/ponkans/F2E 已收录,有一线大厂前端面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习。文末有福利~~
前言
数组是JS最常见的一种数据结构,我们在开发中会经常用到,并且JS中数组操作函数还是非常多的,很容易出现弄混或者概念不清晰,写下这篇文章就是想来总结一下,也算是对细节的一个知识大扫盲!!!
JS中的Array方法
新建数组
常规方式
let temp = new Array();
temp[0] = 123;
temp[1] = "string";
temp[2] = true;
console.log(temp[0]); // 123
console.log(temp[3]); // undefined
let temp2 = new Array(2);// 规定了数组的长度为2
temp2[0] = 123;
temp2[1] = "string";
temp2[2] = true; //虽然规定了数组长度,但仍可以再次添加元素,定义的数组大小对此没有影响简洁方式
数组文本方式
let temp = [123,
注意!
出于简洁、可读性和执行速度的考虑,推荐使用最后一种数组文本方法。
数组内可以存放任意类型的数据
数组元素不赋值,则为undefined
访问数组范围以外的元素时,不会出现越界异常,为undefined
定义了数组大小,依然可以添加更多的元素
增删改查
栈方法push & pop增删数组元素
这两个方式都是对数组尾部进行压入和弹出操作。
push(arg1, arg2, …)可以每次压入一个或多个元素,并返回更新后的数组长度。
pop()函数则每次只会弹出尾部的元素,并返回弹出的元素,若对空数组调用pop()则返回undefined。会更改源数组。
let temp = [123, "string", true];
let push1 = temp.push(456); // 插入一个元素
console.log(push1, temp); // 4, [123, "string", true, 456]
let push2 = temp.push(789, "string2", false); // 插入多个元素
console.log(push2, temp); // 7, [123, "string", true, "456", 789, "string2", false]
let temp2 = [123];
let pop1 = temp2.pop();
console.log(p