js对象和数组

来源:互联网 发布:苏州软件测试招聘 编辑:程序博客网 时间:2024/05/17 22:01

js对象

创建方式

var jsOb = new Object();var jsOb = Object();var jsOb = {};

初始化对象

jsOb.name = '小明;jsOb.age = '16';jsOb.run = function(){    return '这是一个jsOb run()方法的返回';}var jsOb = {    name : '小明',    age : 16,    run : function(){        return '这是一个jsOb run()方法的返回';    }}   

调用对象的属性和方法

alert(jsOb.name)    //小明alert(jsOb.age) //16alert(jsOb.run) //function(){return '这是一个jsOb run()方法的返回';}alert(jsOb.run())   //这是一个jsOb run()方法的返回

js数组

创建方式

var arr = new Array();var arr = Array();var arr = [];

创建并初始化数组

var arr = new Array(1,'早上好',new Object());var arr = new Array(20);    //创建一个20长度的数组var arr = Array(1,'早上好',new Object());var arr = Array(20);    //创建一个20长度的数组var arr = [1,'早上好',new Object()];

动态添加数据

arr[arr.length] = '2';arr[arr.length+2] = '4';    //arr[arr.length+1]是undefined的。arr.length = 100;   //修改数组的长度值

打印数组

alert(arr); //1,2,3,4,5,6,7,8alert(arr.join('|'));   //1|2|3|4|5|6|7|8

栈方法

var arr = [1,2,3];arr.push('1',2,'第三个');  //返回数组的最新长度 : 6alert(arr) // 123,'1',2,'第三个'arr.pop(); //返回最后放入数组的元素:'第三个'alert(arr); //123,'1',2

队列方法

var arr = [1,2,3];arr.push('1',2,'第三个');  //返回数组的最新长度 : 6alert(arr); // 1,2,3,'1',2,'第三个'arr.shift();    //从数组开头取出一个,返回:1alert(arr); ///2,3,'1',2,'第三个'

在数组最前面添加元素

var arr = [1,2,3];arr.unshift('123','234');alert(arr); //123,234,1,2,3

数组排序

//翻转数组var arr = [3,1,2,4,5,15];arr.reverse();alert(arr); // 15,5,4,2,1,3 将数组逆向
//对数组进行排序var arr = [3,1,2,4,5,15];arr.sort();alert(arr); //1,15,2,3,4,5 !!!???排序结果不对//原因:sort()方法默认是按照字符串的实行进行排序的,所以会取第一个字母比大小//解决方案function compare(value1,value2){    if(value1<value2){        return -1;    }else if(value1>value2){        return 1;    }else{        return 0;    }}arr.sort(compare);alert(arr); //1,2,3,4,5,15

基于当前数组创建一个新数组

var arr = [1,2,3,4,5,6,7,8];var arr2 = arr.concat('arr2','arr2'); alert(arr2);    //1,2,3,4,5,6,7,8,arr2,arr2var arr3 = arr.concat();alert(arr3);    //1,2,3,4,5,6,7,8  --单纯复制//取当前数组部分为新数组var arr4 = arr.slice(1);alert(arr4); //2,3,4,5,6,7,8 var arr5 = arr.slice(2,3);  //取2~3alert(arr5);    //3,4//splice删除var arr6 = arr.splice(2,3); //从第一位开始一次往后删除3位,并将删除的值赋值给arr6alert(arr6); // 3,4,5//splice插入或者替换var arr7 = arr.splice(2,0,'插入第一项','插入第二项');alert(arr7);    //空数组alert(arr)  //1,2,插入第一项,插入第二项,3,4,5,6,7,8var arr8 = arr.splice(2,-1,'插入第一项','插入第二项');alert(arr8);    //空数组 --此处同0alert(arr); //1,2,插入第一项,插入第二项,3,4,5,6,7,8var arr9 = arr.splice(2,1,'插入第一项','插入第二项');alert(arr9);    //3alert(arr); //1,2,插入第一项,插入第二项,4,5,6,7,8
0 0
原创粉丝点击