燕十八

15.[JavaScript]第8章对象和数组[上,下, 中]

 本章学习导航

1. 对象

2. 数组

3.数组对象的方法

对象包含哪些元素?

1. 属性(字段)

2.方法(函数)

对象的创建方法

1.方法一(这里的new可以省略)

<script type="text/javascript">

	var  box = new Object();
	box.name = 'luo';
	box.age = 32;
	alert(box.age);
    
</script>

  2.方法二(字面量方法创建的对象)

<script type="text/javascript">
 var box = {
    name:'luo';
    age:27;
    
};
alert(box.name);
</script>

  说明: 属性可以用英文状态下的引号包起来。

两种属性的输出

alert(boxmsg.age);

alert(boxmsg['age']);

方法的创建及输出

// 第一种
function objrun(){
return '23';
}

var box = new Object();
box.name = '罗';
box.age = 23;
box.run = objrun();
alert(box.run);


// 第二种
var box ={
	name : 'lee',
	age : 32,
	run : function (){  //匿名函数
		return '23';
	}

};

alert(box.run()); // 如果没有run后的括号,会把代码打印出来
 使用delete删除对象属性

  delete.box.name;  

//还可以只传一个参数为对象
function box (obj){
if(obj.name != undefined)alert(obj.name);
if(obj.name != undefined)alert(obj.age);
if(obj.name != undefined)alert(obj.love);
if(obj.name != undefined)alert(obj.height);
}

var b={
name : 'lee',
age : 23
};

box (b);

 

-----------------------------------------------------------------------------------------------------

2. 数组的学习

 

1. 数组
var a = new Array(); //声明一个空数组,创建一个数组
alert(a); // 数组属于对象类型

var box = new Array('罗',33,'浙江'); // 创建 一个数组,有三个元素
alert(box);
alert(box[0]); // 数组是 有一个下标的

var box = new Array(10); // 创建 一个包含10元素的数组
box[3] = 'lei';
alert(box[3]);
alert(box);

 

//2. 创建数组时,可以省略关键字
var a = Array();
alert(typeof a);


//3. 字面量的方法创建数组
var box = [];
var box = ['luo',23,'学生','浙江'];
var box = [1,2,];//额外的逗号会让IE 获取到
var box = [,,,,]; //这个写法也不对

4. 求组数长度 的函数

var box = [1,2,3,4];
alert(box.length);

5. 可以增加数组元素,修改,和删除
var box =['aaa',23,'bbbb'];
box[1] = 100;
box[2] ='ccccc';
box[3] = '计算机';
box[1].delete;
alert(box);

var box = [];
box['name'] = 'lei';
box['age'] = 32;
alert(box['name']); // 如果 不字符串的下标不能用box 直接输出,要用box['name']的形式

var box = [];
box[0] = 'lei';
box[1] = 23;
alert(box); // 如果是数字下标就可以

6. 如果强制了元素量,以逗号扩展补充。
var box = ['le',23,'ss'];
box.lenght = 10;
alert(box.lenght);
alert(box);


 7.
var box = ['lee',32,'浙江'];
box[6] = '江苏';
alert(box);

var box = ['lee',32,'浙江'];
box[box.length] = '江苏'; // 这样写中间就不会有逗号了
alert(box);

 


8 . 还可以创建一个复杂的数组。


var box = [
{name : 'lee' , age : 23 , address : '浙江'},
23+23,
[2,3,3,new Array()],
'这要学习计算机编程'

];
alert(box);
*/

 

15.[JavaScript]第8章对象和数组下

1. 对象 ,数组中的方法
对象或数组都具有toLocaleString(),toString和valueOf()方法,其中toString和
valueOf()无论重写了谁,都会返回相同的值,数组会讲每个值进行字符串的拼接,以逗号
隔开。

var box = ['lee ',33,'计算机编程',new Date()]; //字面量数组
alert(box); //隐式调用了toString()方法
alert(box.toString()); // 和valueOf()返回一相
alert(box.toLocaleString()); //返回值和上面两种一样

2. 默认情况下,数组字符串都会以逗隔开,如果使用join(),则可以用不同的
分隔符来隔开。

var box = ['',33,'计算机编程'];
alert(box.join('|')); // 方法运行后,返回按|分割的字符串
alert(box); //原数组没有任何变化,还是Object

3. 数组元素的push() 方法 ,和pop()方法
var box = ['lele',32,'计算机编程'];
alert(box);
alert(box.push('江苏','地方')); // 在数组后增加N个元素,返回数组的长度
alert(box);

var box = ['lele',32,'计算机编程'];
alert(box);
alert(box.pop()); //移出数组末尾的一个元素,并返回移出的元素。
alert(box);

var box = ['lele',32,'计算机编程'];
alert(box.shift()); //移出数组元素开始的一个元素,批返回移出的元素
alert(box);


var box = ['lele',32,'计算机编程'];
alert(box.unshift('灌输','sss')); //数组前端添加N个元素,返回最新的长度。
alert(box);

说明 : IE浏览器对unshif()方法总是返回undefined而不是数组的新长度

4. reverse()方法
var box = [1,2,3,4,5];
alert(box.reverse()); //返回它的逆序数组
alert(box); //原数组也改变了,说明是对它的引用进行操作


5. sort()方法的应用
function compare2(value1, value2) { //数字排序的函数参数
if (value1 < value2) { //小于,返回负数
return -1;
} else if (value1 > value2) { //大于,返回正数
return 1;
} else { //其他,返回0
return 0;
}}
var box = [0,1,5,10,15]; //验证数字字符串,和数字的区别
alert(box.sort(compare2));

6. concat方法原数组不受影响 ,连接成一个新的数组
var box = ['sd',23];
box1 = box.concat('计算机');
alert(box1);
alert(box);

7. slice方法的应用
var box = ['111',32,'sd'];
alert(box.slice(1,3)); //是从第0个位置开始取,取到第三个位置(但不包括第三个元素)

8. slipce()方法的应用
var box = ['1111',32,'sd'];
alert(box.splice(1,2)); //这里表示从数组的下标1开始的位置取2个

1.该方法有删除功能
var box = ['李炎恢', 28, '盐城']; //当前数组
var box2 = box.splice(0,2); //截取前两个元素
alert(box2); //返回截取的元素
alert(box); //当前数组被截取的元素被删除

2. 该方法有插入功能。
var box = ['浙江',32,'上海'];
var box2= box.splice(1,0,'我','家') //从数组的下标1开始取出0个元素,并在
//下标位置为1的地方插入两个元素。
alert(box);

3. 该方法有替换功能

var box = ['浙江',32,'上海'];
var box2= box.splice(1,1,12) //从数组的下标1开始取出0个元素,并在
//下标位置为1的地方插入两个元素。
alert(box);

 

posted @ 2014-04-18 09:46  启红  阅读(294)  评论(0编辑  收藏  举报