96SEO 2026-07-24 13:59 2
写这篇文章的起因很简单——刷 LeetCode 的时候,发现自己对数组的理解一直停留在「能用就行」的水平。很多方法天天用,但真问到细节。比如 new Array 和 new Array.fill 到底有什么区别,还是会卡住。索性把 JS 数组从头捋了一遍,这篇文章算是笔记,也希望对你有用。
数组的本质是一块连续的内存空间。假设起始地址是 x每个元素占固定大小,那第 n 个元素的地址就是「起始地址 + 偏移量」。数组按下标访问是 O,这就是它最主要的优势。

JS 的数组跟 C/Java 那类静态语言最大的区别JS 数组干但是类型数组,这点心里要有数。
写法很多,但最容易踩坑的是这两个:
const arr1 = new Array;// const arr2 = new Array.fill;//
从打个比方来看,empty 就像电影院里里还没卖出去的座位。
说到数组创建,顺便提一下原型链。不过,
用
push、pop、unshift、shift 这四个是操作数组元素最直接的方法,但它们都会修改原数组——换个角度都不是纯函数。
**队头操作比队尾慢很多**。因为队头操作要移动所有后续元素。如果你的场景频繁在头部增删,考虑用链表,或者直接把数组反转过来用。
说到「修改原数组」,顺带提一下纯函数这个概念。怎么说呢,纯函数满足两个条件:一样的输入永远得到一样的输出。且没有任何副作用,
这个 new Array 创建的是一个长度为 的空数组。注意,是「空」,不是 fill 则是把每个位置都填上具体的值。如果要创建一个长度已知且每个元素有默认值的数组,这个写法很常用。Array 是个构造函数。它的原型链是这样的:
Array → Function.prototype → Object.prototype → nulltypeof Array 会返回 'function'因为构造函数本质上就是函数。而数组实例的方法全挂在 Array.prototype 上。理解这个对后面区分纯函数和非纯函数有帮助。怎么说呢,
从增删改查来看。四种会修改原数组的方法
push 和 pop
const arr =;const len = arr.push;// len =,arr = const val = arr.pop;// val = 'd'。arr = push 在队尾插入,返回新数组的长度。pop 弹出队尾元素,返回那个被弹出的值。
unshift 和 shift
const len = arr.unshift;// len =,arr = const val = arr.shift;// val = 'x'。arr = unshift 在队头插入,返回新长度。shift 从队头移除,返回被移除的值。不过,
一个容易被忽略的概念:纯函数
let num =;function add { num += b;return num,}add
就不是纯函数——它依赖外部变量 num
每次调用结果都不一样,下次调用依赖上次的副作用。其实,上面四个方法同理,它们修改了原数组,不是纯函数。
遍历数组的观点是,怎么选
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback