js是一门拥有非常强表达能力的语言,当你知道你要做什么的时候,它能帮助你更加出色的完成这件事情。当然,想要成为一名出色的前端工程师,需要的是更多的精力跟学习。所以大家要跟我一起努力哦!
数组基本了解
数组(array),字符串(string),和数字(number)算是一个程序最基本的组成部分,这篇文章着重为大家讲解一下数组的使用,毕竟数组是前端开发经常要接触的东西嘛(小声bb 嘻嘻)
和其他强类型语言不同,在javascript中,数组可以容纳任何类型的值,可以是字符串,可以是数字,可以使对象,也可以是其他的数组(多维数组就是通过这种方式实现的)
1. 数组创建
var a = []; //这是一个没有元素的空数组示例
var a = [1,2,3]; //这是三个元素的数组示例
var b = [1,"2",[3,4]]; //这是包含字符串 数字 嵌套数组的示例
var a = new Array(); //调用构造函数Array()创建数组 调用时没有参数
var b = new Array(3); //调用时有一个数值参数,它指定长度
var c = new Array(1,2,3); //新创建的数组的元素就会被初始化为这些值,它的 length 字段也会被设置为参数的个数
2. 数组长度
每个数组都有一个length属性,js数组的长度是没有上限的,如果你用大于或者等于当前length的数字来储存一个元素,length值就会增大容纳新元素,不会发生数组越界的错误
//数组在声明之后就可以向其中加入值
var arr = [];
arr.length //0
arr[0] = 1;
arr[1] = "2";
arr[2] = "3";
arr.length //3
arr[100] = true;
arr.length //100
3. 稀疏数组(sparse array)
稀数组就是含有空白或单缺单元的数组,数组元素的索引不一定要连续,元素之间可以有空隙
在创建稀疏数组的时候要注意:
var arr = [ ];
arr[0] = 1;
//此处不设置arr[1]
arr[2] = [ 3 ];
arr.length //3
可以看到, 上面的代码可以正常的运行,这就是一个稀疏数组,其中的 ‘空白单元’ 即没有设置的arr[1]的值 为undefined , 这里的undefined指不存在,但是这与直接设置 arr[1]=undefined 还是有所不同,再举个栗子
var arr1=[undefined,undefined,undefined]
var arr2=new Array(3);
console.log(arr1)
console.log(arr2)
在谷歌浏览器上arr1显示的是[undefined,undefined,undefined],而arr2显示的为 [undefined × 3] ,由此可以看出他们是不同的,arr2这里的undefined指不存在。
4. 稀疏数组遍历
var arr = new Array(3);
arr[50]=1;
console.log(arr.length ) //51
console.log(arr[0]) //undefined
arr.forEach(function(value,index){
console.log(value); //1
});
上面这段代码可以看出,在遍历数组的时候js是会跳过这些空白单元,直接找到下标为51的值。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。