数组基本方法
//声明或者创建一个不指定长度的数组,又称之为实例化创建
// var arrayObj = new Array();
//声明或者创建一个数组并指定长度的数组
// var arrayObj = new Array(5);
//声明或者创建一个带有默认值的数组
// var arrayObj = new Array(2,4,"a","y",8);
//创建一个数组并赋值的简写,又称之为隐式创建数组
var arrayObj = [2,4,"a","y",8];
console.log(arrayObj);
console.log("数组arrayObj的长度为:"+arrayObj.length);
//数组的赋值,字符索引下标,数组的遍历
// console.log(arrayObj[0]);//2
// console.log(arrayObj[4]);//8
// console.log(arrayObj[5]);//undefined
for(var i in arrayObj){
// console.log(str);//获取的是索引值
console.log(arrayObj[i]);
}
//依次打印出数组内的元素
var i;
var n=arrayObj.length;
for(i=0;i<n;i++){
console.log(arrayObj[i]);
}
数组的栈方法
push()
1、把它的参数顺序添加到数组的尾部
2、arr.push(l1,l2…)
3、返回值:把指定添加到数组后的新长度。number
var nums = [1, 2, 3, 4];
var len = nums.push('3','4');
console.log(nums.length);
console.log(nums);//入栈往后加
unshift()
1、把它的参数顺序添加到数组的头部
2、arr.unshift(l1,l2…)
3、返回值:把指定添加到数组后的新长度。number
var sizes = nums.unshift(99, 66);
console.log(sizes);
console.log(nums);
pop()
1、删除arrayObj的最后一个元素
2、语法:arr.pop()
3、返回值:被删除的那个元素
var n = nums.pop();
console.log(n);//弹栈会返回元素值
console.log(nums);//此时被弹出的元素不在数组之中
shift()
1、删除arrayObj的第一个元素
2、语法:arr.shift()
3、返回值:被删除的那个元素
var m = nums.shift();
console.log(nums);
console.log(m);//同理
数组的转换和重排序
join()
1、用于把数组中的所有元素放入一个字符串
2、语法:arr.join()
3、返回值:字符串
var words = ['bor','sis','mom','dad'];
var wordsStr = words.join('-');
console.log(typeof(wordsStr));
reverse()
1、用于颠倒数组中的元素的顺序
2、语法:arr.reverse()
3、返回值:数组
nums.reverse();//返回数组
console.log(nums);
sort()
1、用于对数组的元素进行排序
2、语法:arr.sort()
3、返回值:数组
4、说明:
a. 即使数组中每一项都是数值,sort()方法比较的也是字符串
b. sort()方法可以接收一个比较函数作为参数
var arrDemo = [9,23,15,88,12];
arrDemo.sort(function(a,b){
return b-a;
});
console.log(arrDemo);
数组操作方法
concat()
1、用于连接两个或多个数组
2、语法:arr.concat(arr1,arr2…)
3、返回值:数组
var arr1 = ['a','b','c'],
arr2 = ['d','e'],
arr3;
arr3 = arr1.concat(arr2,['m','n'],arr2);
console.log(arr3);
slice()
1、从已有的数组中返回选定的元素
2、语法:arr.slice(start,end) – 截取
3、参数:
a. start – 必须 规定从何处开始选取,如果是负数,从数组的尾部开始算起
b. end – 可选 规定从何处结束选取,是数组片段结束处的数组下标
c. start和end指的是数组中的索引值
d. 截取从start到end(不包含的元素),正确的是从start到end-1的元素 – 算前不算后
4、返回值:数组
var newArr = arr3.slice(2,5);//初始位置和结束位置
console.log(newArr);