您的位置:首页 > Web前端 > JavaScript

javascript数组常用方法(一)

2016-01-07 21:49 766 查看

javascript数组常用方法(一)

关于运算符号的问题

var a = "1";
var b = true;

// == 比较自动转换后 数值是否相等
// === 表示 可以经过自动转换,光比较值,再比较数据类型
if(a === b){
alert("equal")
}else{
alert("not equal")
}
// 三目运算符
var c = 10/2? 5:2;
alert(c)


2.数组表示方式

/*
* 数组本身也是对象
* js中数组类似与java中的map容器,长度可以改变,元素类型任意
*
*/

var arr = new Array();
var arr = [1,2,3,4,true,'abc',new Date()];
alert(arr.length);
alert(arr)
alert(arr.toString) // [object object];


3.pop与push方法

/*
* pop 与 push方法
*/
var arr = [];
var result = arr.push(1,2,true); // push追加元素
//alert(arr)
//alert(result)

var obj = arr.pop();
//alert(obj) // true


4.shift与unshift方法

var arr = [1,2,3,true,new Date()];
var r1 = arr.shift(); // 从头部移除元素
//alert(arr);
//alert(r1)// 返回你移除的元素

var r2 = arr.unshift(10,false); // 从头部插入多个元素(返回新数组的元素个数)
//alert(arr);
//alert("new list num:"+r2);


5.splice与slice方法

/*
* splice,slice 方法
* splice方法操作数组本身
* slice方法不操作数组本身
*
*/

var arr = [1,2,3,4,5];
arr.splice(1,2,3,4,5);

// 第一个位置参数:起始位置
// 第二个位置:表示截取的个数
// 第三个参数以后:表示追加的新元素个数 新元素追加位置是再原来删除的位置,而不是尾部追加!

//alert(arr);  // 134545
var arr1 = [1,2,3,4,5];
var result = arr.slice(2,4); // 2-4 截取,左闭右开
alert(arr)
alert(result); // 返回截取内容


6.concat 与 join

/*
* concat  join
*/
var arr = [1,2,3];
var arr1 = [true,4,5];

var result = arr1.concat(arr); // 合并粘连的操作,(不操作数组本身)
alert(result);

var res = arr1.join("-"); // 不操作数组本身
alert(arr1);
alert(res); //  true - 4 - 5


7.sort 和reverse方法

/*
* sort 正序排序
* reverse  倒叙排序
*
*/

var arr1 = [5,2,1,4,3];
var arr2 = [10,2,4,1,7];

arr1.sort();
alert(arr1); // 1 2 3 4 5

arr2.reverse();
alert(arr2) // 7.1.4.2.10

// 接下来还有个小问题  发现了么
arr2.sort();
alert(arr2); //  1 2 4 7 10 ???

// 真实排序是  1 10 2 4 7 !!

// 按照 字符串的首位比较。。


想要解决就要自己动手,丰衣足食

function comparse(val1,val2){
if(val1 < val2){
return -1;
}else if(val1 > val2){
return 1;
}else{
return 0;
}
}
arr2.sort(comparse);
alert(arr2); // 1 2 4 7 10 11
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript