1.检测是否为数组:
var arr = {};
var obj = [];
console.log(arr instanceof Array);//false
//h5新增方法 Array.isArray(参数)
console.log(Array.isArray(obj)); //true
2.翻转数组:reverse()
var arr = [100,200,300,400];
console.log(arr.reverse());//[400, 300, 200, 100]
3.冒泡排序:sort()
var arr = [13,2,33,4,7];
arr.sort(function (a,b) {
return a-b;//升序
//return b-a;//降序
});
console.log(arr);// [2, 4, 7, 13, 33]
4.返回数组元素索引号的方法是 indexof(数组元素):
var arr = [100,200,300,400];
console.log(arr.indexOf(220));//数组中没有此元素返回的是-1
console.log(arr.indexOf(300));//索引号是2
5.数组去重:
function unique(arr) {
var newArr = [];
for (let i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) === -1) {
newArr.push(arr[i]);
}
}
return newArr;
}
var res = unique(['red','blue','green','red','blue']);
console.log(res);
6.数组转换成字符串:
//1.toString()方法 转换成字符串用,号隔开。
var arr = [1,2,3];
console.log(arr.toString());//1,2,3
//2.join(分隔符)
var arr = ['red','green','blue'];
console.log(arr.join('$'));//red$green$blue
console.log(arr.join('-'));//red-green-blue
7.字符串对象:
7.0基本包装类型:
就是把简单数据类型包装成为复杂数据类型,这样基本数据类型就有了属性和方法。String Number Boolean
7.1字符串的不可变:
指的是里面的值不可变,虽然看上去可以改变内容,但其实是地址变了,内存中新开辟了一个内存空间。
7.2字符串对象 根据字符返回位置 str.indexOf('要查找的字符',[起始的位置])
var str = '你好大中国,中烟好';
console.log(str.indexOf('中'));//3
console.log(str.indexOf('中',4));//6 从4的位置开始
7.3查找字符串abcoefoxyozzopp 中所有o出现的位置以及次数。
var str = 'abcoefoxyozzopp';
var index = str.indexOf('o');
var count = 0;
while (index !== -1) {
console.log(index);
index = str.indexOf('o',index+1);
count++;
}
console.log(count);//4
7.4判断字符串abcoefoxyozzopp 中出现次数最多的字符,并统计其次数。
var str = 'abcoefoxyozzopp';
var o ={};
for (let 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 = '';
var k =0;
for (var k in o) {
if (o[k]>max) {
max = o[k];
ch = k;
}
}
console.log(max);
console.log('最多的字符是'+ch);