数组方法

一、基本知识

1.遍历Window对象

var str="",num=0;
for(var attr in window){
str+=num+'.'+attr+':'+window[attr]+'
'; num++; } document.body.innerHTML=str

2.关于for与for in

数组可以用for 循环,也可以用for in;而json只能用for in,不能用for循环;

3.数组的两种创建方法:

直接量方法
对象创建方法

var arr=[];
var arr2=new Array()
//注意第二种方法,如果()里面的参数是数字,则会指数组的长度

4.数组清空

var arr=['aaa',2,3]
arr.length=0;
arr=[];
//这两种方法均可清空,但第一种方法如果数组长度特别大的时候性能较差;
字符串的长度(length)属性仅可读,不可写;

二、数组方法

1.push:在最后面增加一个,返回值是数组的长度;
2.unshift:在最前面增加一个,返回值是数组的长度;
3.pop:扔掉最后一个,返回值是扔掉的元素;
4.shift:扔掉第一个,返回值是扔掉的元素;
5.splice:删除(返回所删除的值)、添加、替换


注意:IE6、7不支持unshift的返回值;

var arr=['aaa',2,3,'中医','张森','莫涛'];
alert(arr.push('bbb'));
alert(arr.unshift('bbb'));
alert(arr.pop());
alert(arr.shift());
arr.splice(0,2);
arr.splice(0,2,'leo or  TM');
arr.splice(1,0,'leo or  TM');

数组交换位置:可以用在轮播图里面
arr.unshift(arr.pop());
arr.push(arr.shift());

6.数组去重

7.数组排序:

7.1 sort,该方法是按照字符串比较的形式来排序,也可以在sort种增加比较函数;打乱顺序时可以使用随即函数

var arr=[4,3,5,76,2,0,8]
arr.sort();
arr.sort(function(a,b){
    return a-b;
})
arr.sort(function(a,b){
    return Math.random()-0.5;
})

7.2.原生方法:快速、希尔、冒泡、归并、选择、插入等等;

8.reverse颠倒数组

arr=[1,2,3,4,5,6]
arr.reverse();
//颠倒字符串
var str='abcdef'
str.split("").reverse().join("")

你可能感兴趣的:(数组方法)