IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> JavaScript数组采坑 -> 正文阅读

[JavaScript知识库]JavaScript数组采坑

长度

JS 数组长度不是里面包含了多少个元素,为数组中元素最大索引加一


const arr = [];

arr[20] = 1;

console.log(arr.length) // log: 21
console.log(arr[0]) // log: undefine

// 可使用 数组的length属性去清空元素
let arr1 = [1, 2, 3, 4, 5, 6, 7];

// 保留四个元素
arr1.length = 4;
console.log(arr1) // log: [ 1, 2, 3, 4 ]

// 清空数组
arr1.length = 0;
console.log(arr1); // log: []

遍历

使用 for…in 和 forEach() 遍历都会跳过空元素(undefine)
使用 for…of 和 for 遍历,依然会遍历空元素


let arr = [1, 2];

arr[5] = 5;

for(let i = 0; i < arr.length; i++) {
  console.log(arr[i]);  
}
// log: 1 2 undefine undefine undefine 10

for(let site of arr) {
  console.log(site)
}
// log: 1 2 undefine undefine undefine 10

for(let key in arr) {
  console.log(arr[key]);
}
// log: 1 2 5

arr.forEach(value => {
  console.log(value);
})
// log: 1 2 5

关于数组的计算属性

const arr = [];
arr[0] = 0;
arr[1] = 1;
arr[2] = 2;

// 数组计算属性的用法
arr["property" + "1"] = "数组的计算属性";

// 可以通过属性名得到数组值
console.log(arr.property1); // log:数组的计算属性

// 当你给你的数组加了一个计算属性后,再用for...in 来遍历数组
for(let index in arr) {
  console.log(arr[index]);
}
// log: 0 1 2 3 数组的计算属性

// 再看看数组的长度
console.log(arr.length); // log: 3

不要使用 === 去判断数组相等,或判断否空数组

记住,数组也是对象

const arr= []

// 全等时
console.log(arr === []); // log: false
console.log(arr === 0); // log: false
console.log([1] === [1]) // log: false

// 使用相等时
console.log(arr == 0) // log: true 
console.log(arr == '') // log: true 
console.log(arr == []) // log: false
console.log(arr == null) // log: false
console.log([1] == [1]) // log: false
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-07-25 11:33:33  更:2021-07-25 11:34:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/2 10:17:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码