在JavaScript中,我们可以使用length属性来获取数组的长度。
语法:
数组名.length
说明:
数组的属性有好几个,不过我们只需要掌握length这一个就够了,其他暂时不需要去了解。
举例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
//创建数组
var arr1 = [];
var arr2 = [1, 2, 3, 4, 5, 6];
//输出数组长度
document.write(arr1.length + "<br/>");
document.write(arr2.length);
</script>
</head>
<body>
</body>
</html>
浏览器预览效果如图所示。
分析:
var arr1 = [];表示创建一个名为arr1的数组,由于数组内没有任何元素,所以数组长度为0,也就是arr1.length为0。
举例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
//创建数组
var arr = [];
arr[0] = "HTML";
arr[1] = "CSS";
arr[2] = "JavaScript";
//输出数组长度
document.write(arr.length);
</script>
</head>
<body>
</body>
</html>
浏览器预览效果如图所示。
分析:
在这里,我们首先使用var arr = [];创建了一个名为arr的数组,此时数组长度为0。但是后面我们又用arr[0]、arr[1]、arr[2]为arr添加了3个元素,因此数组最终长度为3。
var arr = [];
arr[0] = "HTML";
arr[1] = "CSS";
arr[2] = "JavaScript";
上面代码其实等价于:
var arr = ["HTML", "CSS", "JavaScript"];
现在大家应该能理解数组最终长度为什么是3了吧。
举例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
//创建数组
var arr = [1, 2, 3, 4, 5, 6];
//输出数组所有元素
for(var i=0;i<arr.length;i++)
{
document.write(arr[i] + "<br/>");
}
</script>
</head>
<body>
</body>
</html>
浏览器预览效果如图所示。
分析:
这里我们使用for循环来输出数组的每一个元素。这个小技巧很有用,在实际开发中经常用到。length属性一般都是结合for循环来遍历数组中的每一个元素,然后对每一个元素进行相应操作的。
常见问题:
1.不是说数组是存储一组“相同数据类型”的数据结构吗?为什么当数组元素为不同数据类型时,JavaScript也不会报错并且能输出呢?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
var arr = [123, "javascript", false, NaN, undefined, null];
for (var i = 0; i < arr.length; i++)
{
document.write(arr[i] + "<br/>");
}
</script>
</head>
<body>
</body>
</html>
浏览器预览效果如图所示。
其实一个数组是可以存储“不同数据类型”的数据的,只不过我们极少那样做。一般情况下,都是用数组来存储“相同数据类型”的数据,所以这样理解就可以了。