<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>javascript中的数组方法</title>
<script type="text/javascript">
// js 数组
window.onload=function(){
var a =[2,4,3,12];
document.write(a.length+"<br>");
document.write(a.join("")+"<br>");// 将数组转化为字符串 ,默认分隔符为,可以指定分隔符
a.push("ds");//末尾追加元素
a.unshift(2);//从 首部添加元素
document.write(a.toString()+"<br>");
document.write(a.pop()+" , "+a.toLocaleString()+"<br>");//删除并返回最后一个元素
a.shift();//从首部 删除并返回元素
document.write(a.join()+"<br>");
var b =[12,32,[322,3,[43,44]]];
document.write(a.concat(b)+"<br>");//连接两个或更多的数组,并返回结果。
//自定义排序
document.write(a.sort(function(a,b){
return a-b;
}));
document.write("<br>");
/*ECMASCRIPT 新添加的方法 */
//遍历数组
a.forEach(function(value){
document.write(value+",");
});
document.write("<br>");
var c = a.map(function(s){
return s*2+3;
});
document.write(c.join()+"<br>");//7,9,11,27
//filter();返回符合过滤条件的数组
var d = a.filter(function(e){
return e>5;
});
document.write(d.join()+"<br>");//12
//ervery() 和 some() 判断 满足指定的条件
document.write(a.every(function(x){
return x>10;
}));
document.write(a.some(function(x){
return x>10;
}));
//redurce() 第二个参数可选,传递一个初始值给 数组
var sum = a.reduce(function(x,y){return x+y;},0);
var max = a.reduce(function(x,y){ return (x-y>0)?x:y},0);
document.write(sum+","+max);
//reduceRight() 从数组索引 从 高到低 的 处理数组
//indexOf() 和 lastIndexOf();
}
</script>
</head>
<body>
</body>
</html>