javascript笔记7之对象数组

 1 /*
 2 var box = new Array();                            //声明一个数组,空数组
 3 alert(typeof box);                                    //数组属于object类型
 4 
 5 
 6 var box = new Array('李炎恢', 28, '盐城');    //创建一个数组,并分配了三个元素
 7 //alert(box);
 8 alert(box[0]);
 9 
10 var box = new Array(10);                        //创建数组,包含10个元素,必须是数字,必须是1位
11 box[3] = 'zhangsan';
12 box[5] = '盐城';
13 alert(box);
14 
15 var box = new Array('盐城');
16 alert(box);
17 
18 var box = Array();
19 alert(typeof box);
20 
21 var box = [];                                                //字面量的方式创建数组
22 alert(typeof box);
23 
24 var box = ['zhangsan', 28, '盐城'];    //字面量的方式创建数组,并且分配了元素
25 alert(box);
26 
27 var box = [1,2,];                                    //额外的逗号会让IE获取到,而参数错误
28 alert(box.length);
29 
30 var box = [,,,];                                            //不允许
31 alert(box.length);
32 
33 var box = ['zhangsan', 28, '盐城'];    
34 box[1] = 100;
35 box[4] = '计算机编程';
36 alert(box);
37 
38 var box = [];    
39 box['name'] = 'zhangsan';
40 box['age'] = 28;
41 alert(box['name']);                    //如果是字符串下标,不会体现在数组上,而要单独拎出来
42 
43 
44 var box = [];    
45 box[0] = 'zhangsan';
46 box[1] = 28;
47 alert(box);                            //如果是索引下标,就会在数组上体现出来
48 
49 
50 var box = ['zhangsan', 28, '盐城'];    
51 box.length = 10;                    //强制了元素量
52 alert(box.length);                
53 alert(box);                            //以逗号扩展补充
54 
55 var box = ['zhangsan', 28, '盐城'];    
56 box[3] = '江苏';
57 alert(box);
58 
59 var box  = ['zhangsan', 28, '盐城'];    
60 box[box.length] = '江苏';            //使用.length获得最后一个下标值
61 alert(box);
62 */
63 
64 
65 var box = [
66                     {
67                         name : '李炎恢',
68                         age : 28
69                     },
70                     [3,4,6,'江苏',new Object()],
71                     '计算机编程',
72                     25+25,
73                     new Array(1,2,3)
74 ];
75 alert(box);
76 alert(box[0]['name']);
  1 /*
  2 //对象包含哪些元素
  3 //1.属性(字段)
  4 //2.方法(函数)
  5 
  6 
  7 var box = new Object();                            //创建一个对象
  8 box.name = '李炎恢';
  9 box.age = 28;
 10 alert(box.age);
 11 */
 12 
 13 /*
 14 var box = Object();            //new关键字省略了
 15 alert(box);
 16 
 17 */
 18 /*
 19 var box = {};        //字面量方式创建的对象
 20 alert(box);
 21 */
 22 
 23 /*
 24 var box = {                                            //用字面量对象封装数据
 25     name : 'zhangsan',
 26     age : 28
 27 };
 28 alert(box.name);
 29 */
 30 
 31 /*
 32 var box = {                                            //用字面量对象封装数据
 33     'name' : 'zhansan',                                //属性可以用引号来括起来
 34     'age' : 28
 35 };
 36 alert(box.name);
 37 */
 38 
 39 /*
 40 var box = {};                                        //字面量方式
 41 box.name = 'zhangsan';                            //传统赋值方式
 42 alert(box.name);
 43 */
 44 
 45 /*
 46 var box = {                                            
 47     name : 'zhangsan',                            
 48     age : 28
 49 };
 50 alert(box.name);
 51 alert(box['name']);                            //用数组的方法输出
 52 */
 53 
 54 
 55 /*
 56 function objrun() {
 57     return '123';
 58 }
 59 
 60 //方法=函数
 61 
 62 var box = new Object();                            //创建一个对象
 63 box.name = '李炎恢';
 64 box.age = 28;
 65 box.run = objrun;                //这里有点小复杂
 66 alert(box.run());                                
 67 
 68 */
 69 
 70 /*
 71 var box = {                                            
 72     name : '李炎恢',                            
 73     age : 28,
 74     run : function () {                                //匿名函数
 75         return '123';
 76     }
 77 };
 78 alert(box.run());                                        //调用方法(函数),如果没有圆括号,会打印代码
 79 */    
 80                                                             //有圆括号,才会打印返回值
 81 /*
 82     var box = {                                            
 83     name : '李炎恢'
 84 };
 85 
 86 alert(box.name);
 87 delete box.name;            //删除属性
 88 alert(box.name);                                                        
 89 
 90 */
 91 function box(name,age,height,address,love) {
 92     alert(name);
 93     alert(age);
 94 }
 95 
 96 
 97 box('zhangsan',28,178,'江苏盐城','打球');
 98 */
 99 
100 
101 
102 function box(obj) {
103     if (obj.name != undefined) alert(obj.name);
104     if (obj.love != undefined) alert(obj.love);
105     if (obj.age != undefined) alert(obj.age);
106 }
107 
108 
109 
110 
111 box({                                                //匿名对象
112     name : '李炎恢',
113     age : 28,
114     height : 178,
115     address : '江苏盐城'
116 });
/*


var box = ['zhansan', 28, '盐城'];
alert(typeof box.join('|'));    //方法运行过后返回按|分割的字符串
alert(typeof box);                //原数组没有任何变化,类型还是object


var box = ['zhansan', 28, '盐城'];
alert(box.push('计算机编程','江苏'));//给数组末尾添加了N个元素,
并返回数组最新长度
alert(box);
alert(box.pop());    //移除数组最后的元素,并且返回移除的元素
alert(box);

var box = ['zhansan', 28, '盐城'];
alert(box.push('计算机编程'));    
alert(box);
alert(box.shift());    //移除数组开头的一个元素,并且返回这个元素
alert(box);


var box = ['zhansan', 28, '盐城'];
alert(box.unshift('江苏'));    //给数组前端添加一个元素,并且返回最新的长度
alert(box);


var box = [1,2,3,4,5];
alert(typeof box.reverse());                        //方法执行后返回一个逆序后的数组
alert(typeof box);                                        //原数组也被逆序了。

var box = [4,1,6,2,7,3,9];
alert(box.sort());                                        //从小到大排序
alert(box);

function compare(value1,value2) {
    if (value1 < value2) {
        return -1;
    } else if (value1 > value2) {
        return 1;
    } else {
        return 0;
    }
}


var box = [0,1,5,10,15];
alert(box.sort(compare));
alert(box.reverse());

var box = ['zhansan', 28, '盐城'];
var box2 = box.concat('计算机编程');
alert(box2);
alert(box);

var box = ['zhansan', 28, '盐城'];
var box2 = box.slice(1);
alert(box2);

var box = ['zhansan', 28, '盐城','计算机编程','江苏'];
var box2 = box.slice(1,3);                //这里不是从第1个位置取3个
alert(box2);        //而是从第1个位置取到第3个位置

var box = ['zhansan', 28, '盐城'];
var box2 = box.splice(0,2);            //这里表示从第0个位置取2个,
alert(box2);                                    //而不是从第0个位置取到第2个位置

var box = ['zhansan', 28, '盐城'];
var box2 = box.splice(0,2);            //这里表示从第0个位置取2个,
alert(box2);                                    //而不是从第0个位置取到第2个位置
alert(box);


var box = ['zhansan', 28, '盐城'];
var box2 = box.splice(1,0,'江苏','计算机编程');        //从第1个插入点插入元素,0表示不删除
alert(box2);
alert(box);





var box = ['zhansan', 28, '盐城', new Date()];
//alert(box);
//alert(box.toString());
//alert(box.valueOf());
//alert(box.toLocaleString());            //本地格式区域字符串
*/



var box = ['zhansan', 28, '盐城'];            //替换
var box2 = box.splice(1,1,100);
alert(box2);
alert(box);