数组
概念:
存储数据的一个集合。
获取数组的元素
数组的取值:0-arr.lenght-1
数组的长度
lenght:获取数组内元素的个数
//格式:数组名[下标] 下标又称索引
//功能:获取数组对应下标的那个值,如果下标不存在,则返回undefined。
数组遍历的基本语法
for (var i = 0; i < arr.length; i++) {
// 数组遍历的固定结构
}
for (变量 in 对象) {
在此执行代码
}
数组创建的两种方式
字面量方式创建
var arr = [];//空数组
var arr1 = [12, 4, 5, 54, 45];//含有四个元素的数组
构造函数
//构造函数
var arr2 = new Array();//空数组;
var arr2 = new Array(12, 5, 4, 2);//含有四个元素的数组;
数组元素的修改:数组名(下标)
arr[ ]=“ ”;//将1号元素重新赋值给“ 字符串”
数组的增、删方法
push()和pop()方法使用
//push(元素..)在尾部进行增长;
//pop()在尾部进行删除;
var arr = [65, 55, 12, 21, 23];
arr.push(21);//可以在尾部追加多个元素
arr.pop();//可以在尾部删除一个元素
console.log(arr);
unshift()和shift()方法的使用
//unshift()在头部进行添加
//shift()在头部进行删除
var arr1 = [”张三“,”李四“,”王五“]
arr.unshift(53);//可以在头部添加多个元素
arr.shift();//可以在头部删除一个元素,并获取删除的内容
console.log(arr);
var arr2 = [15, 51, 65, '张三', '李四', '王五', 12]
arr1 unshift(51, 51, 13, 56);//可以在头部添加多个元素
var ss = arr1.shift();//可以在头部删除一个元素,并获取删除的内容
join()和reverse()方法的使用
var arr2 = [12, 45, 55, '张三', '李四', '王五', 12];
var str = arr2.join('-');//将数组元素以 '-' 拼接为字符串
console.log(str);
console.log(typeof str);
arr2.reverse();//将数组元素进行倒叙排序
console.log(arr2);
sort(), concat() 方法的使用 *****
5.4.5 splice(), slice() 方法的使用 *****
数组的排序
sort()对数组的元素进行排序。
- 1不传参数,将不会按照数值大小排序,按照字符编码ASCII的顺序进行排序
var arr2 = [30,10,111,35,1899,50,45];
var resArr2 = arr2.sort();
console.log(resArr2);//输出 [10, 111, 1899, 30, 35, 45, 50]
- 2传入参数,实现升序,降序
var arr3 = [30,10,111,35,1899,50,45];
arr3.sort(function(a,b){
return a - b;
})
console.log(arr3);//输出 [10, 30, 35, 45, 50, 111, 1899]
var arr4 = [30,10,111,35,1899,50,45];
arr4.sort(function(a,b){
return b - a;
})
console.log(arr4);//输出 [1899, 111, 50, 45, 35, 30, 10]
数组的拼接
concat()连接两个或更多的数组。
数组元素的去重
// 格式:数组名[下标/索引] = 值;
// 如果下标有对应的值,会把原来的值覆盖,如果下标不存在,会给数组新增一个元素。
var arr = [1, 3, 5,7,2,1,3,4,5,6];
// 定义一个空数组
var newArr = [];
// 循环遍历旧数组
for(var i =0;i<arr.length;i++){
// 如果新数组内没有找到元素,就放入到新数组中
if(newArr.indexOf(arr[i])==-1){
newArr.push(arr[i]);
}
}
console.log(newArr);
案例
// 1、.将120-100之间数放入数组,输出数组以及数组长度,再找出能被12或7整除的数,每7个一行显示。
var arr = [];
var n = 0;
for (var i = 100; i <= 200; i++) {
arr.push(i);
}
for (var j = 0; j < arr.length; j++) {
if (arr[j] % 12 == 0 || arr[j] % 7 == 0) {
n++;
document.write(arr[j]+" ");
if (n % 7 == 0) {
document.write("<br>");
}
}
}