js对象和数组


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) //16
alert(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,8
alert(arr.join('|'));   //1|2|3|4|5|6|7|8
栈方法
var arr = [1,2,3];
arr.push('1',2,'第三个');  //返回数组的最新长度 : 6
alert(arr) // 123,'1',2,'第三个'
arr.pop(); //返回最后放入数组的元素:'第三个'
alert(arr); //123,'1',2
队列方法
var arr = [1,2,3];
arr.push('1',2,'第三个');  //返回数组的最新长度 : 6
alert(arr); // 1,2,3,'1',2,'第三个'
arr.shift();    //从数组开头取出一个,返回:1
alert(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,arr2
var 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~3
alert(arr5);    //3,4

//splice删除
var arr6 = arr.splice(2,3); //从第一位开始一次往后删除3位,并将删除的值赋值给arr6
alert(arr6); // 3,4,5

//splice插入或者替换
var arr7 = arr.splice(2,0,'插入第一项','插入第二项');
alert(arr7);    //空数组
alert(arr)  //1,2,插入第一项,插入第二项,3,4,5,6,7,8

var arr8 = arr.splice(2,-1,'插入第一项','插入第二项');
alert(arr8);    //空数组 --此处同0
alert(arr); //1,2,插入第一项,插入第二项,3,4,5,6,7,8

var arr9 = arr.splice(2,1,'插入第一项','插入第二项');
alert(arr9);    //3
alert(arr); //1,2,插入第一项,插入第二项,4,5,6,7,8
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值