一 数组对象
1.检测是否为数组
instanceof 运算符:可以用来监测是否为数组
array.isArray():用来确定传递的值是否为array
二 添加删除数组元素
push()//末尾添加一个或多个元素,修改原数组--返回新的长度
pop()//删除数组最后一个元素,把数组长度减1,修改原数组--返回它删除元素的值
unshift()//向数组开头添加一个或多个元素,修改原数组--返回新长度
shift()//删除数组第一个长度数组长度减1,修改原数组--返回第一元素的值
1.案例:删除超过2000的元素
var arr=[1200,1500,2000,2400,1300];
var newArr=[];
for(var i=0;i<arr.length;i++){
if(arr[i]>2000){
// newArr[newArr.length]=arr[i]
newArr.push(arr[i]);
}
}
三.数组排序
reverse() //颠倒数组的顺序
sort()//对数组进行排序
1.冒泡排序
var arr=[2,6,7,3,8];
arr.sort();
sort:排序时先看个位
双位数排序
var arr=[22,16,7,13,88];
arr.sort(function(a,b){
return a-b;//升序排列
});
var arr=[22,16,7,13,88];
arr.sort(function(a,b){
return b-a;//降序排列
});
四。数组索引方法
indexOf() //查找给定元素的第一个索引,不存在返回-1
lastindexOf()///查找数组的最后一个索引,不存在返回-1
1.案例:数组去重
var arr=['c','a','c','b','d','a','d','r','c'];
function unique(arr){
var newArr=[];
for(var i=0;i<arr.length;i++){
if(newArr.indexOf(arr[i])===-1){
newArr.push(arr[i]);
}
}
return newArr;
}
console.log(unique(arr));
五 数组转化为字符串
tostring()//把数组转化为字符串,逗号分割每一项
join(‘分隔符’)//把数组元素转化为字符串
concat()//连接两个或多个数组,返回新数组,不影响原数组
slice()//数组截取,两个参数,参数一开始,参数二结束,返回新数组
splice()//数组删除splice(第几个开始,删除的个数)
六。字符串对象
charAt(index) //返回指定位置的字符(index字符串的索引号)
charCodeAt(index)//获取指定字符位置的ASCII码
str[i]//指定位置出字符
1.统计出现最多的字符和次数
var str='abcoeoxyozzopaiflss';
var o={};
for(var i =0;i<str.length;i++){
var chars=str.charAt(i);
if(o[chars]){
o[chars]++;
}else{
o[chars]=1;
}
}
console.log(o);
var max=0;
var ch='';
for(var k in o){
if(o[k]>max){
max=o[k];
ch=k;
}
}
console.log(max);
console.log(ch);