JavaScript学习笔记——对象和数组(上)

来源:互联网 发布:局部对比度增强算法 编辑:程序博客网 时间:2024/05/16 15:54
/* * 对象:其实就是一种类型,即引用类型。以下学习的是Object类型,Array类型,以及其方法。 * 对象的值就是引用类型的一个实例。如:水果作为一个对象,香蕉就是水果对象中的一个实例。男生是一个对象,小明就是一个实例。 *  * Object类型创建的方式: * 1.使用new关键字创建Object * var box = new Object();          //声明对象  box.name = '小明';              //对象的name属性  box.age = 22;                 //对象的age属性                                //小明,22就是对象的一个实例  alert(box.age);         //当然 new 关键字也是可以省略的var box = Object();box.name = '小明';alert(box.name); 2.使用字面量的方式创建Object    var box = {             //字面量方式    name : '小明',        //创建属性字段。注意:个人经常把这里的“,”用成了“;”    age : 22};                      //分号不要丢alert(box.name); 3.另外属性字段也是可以用字符串显示的    var box = {             //字面量方式    'name' : '小明',      //创建属性字段。注意:个人经常把这里的“,”用成了“;”    'age'' : 22};                      //分号不要丢alert(box.name);4.使用字面量及传统赋值方式var box = {};                                       //字面量方式声明一个空box.name = '小明';                            //传统赋值方式,在用的时候赋值alert(box.name);5.两种属性输出方式  alert(box.name);                            //点表示法输出alert(box['name']);                         //用数组的方法输出 *************注:使用字面量声明Object对象时,不会调用Object()的构造函数,Firefox除外******************* *  * //7.给对象创建方法var box = {                         //声明一个对象    run : function(){               //声明一个方法,和上面的属性类同。上文是给一个属性指定一个值,这里给一个方法名指定一个过程,过程返回的结果就是run指定的值。        return '这是一个方法';    }}alert(box.run());// 8.使用delete删除对象属性    var box = {                                             name : '小明'};alert(box.name);            delete box.name;            //删除属性alert(box.name);    //有时候我们需要向函数传递大量的可选参数,如下:function box(name,age,height,address,hoppy){    alert(name);    alert(hoppy);}box('小明',22,183,'浙江杭州','音乐');//当预设的可选参数特别多的时候,这种方式会带来阅读上的困难,所以用另一种方式代替,将预设的可选参数,当成一个对象。var obj = {                 //声明一个对象    name : '小明',    age : 22,    height : 182,    address : '浙江杭州',    hoppy : '音乐'}function box(obj){          //创建一个函数(方法)    alert(obj.name);    alert(obj.age);}//此时仅仅是创建了方法,并没有调用,所以:box(obj);//但是 当我们把name 属性删除时,也就是说不声明对象obj的name属性时,alert时,第一个就会报错。var obj = {                 //声明一个对象    //name : '小明',    age : 22,    height : 182,    address : '浙江杭州',    hoppy : '音乐'}function box(obj){          //创建一个函数(方法)    alert(obj.name);    alert(obj.age);}//此时仅仅是创建了方法,并没有调用,所以:box(obj);//因此我们要进行一个判断,使得更加完善.var obj = {                 //声明一个对象    //name : '小明',    age : 22,    height : 182,    address : '浙江杭州',    hoppy : '音乐'}function box(obj){          //创建一个函数(方法)    if(obj.name != undefined) alert(obj.name);    if(obj.age != undefined) alert(obj.age);    if(obj.height != undefined) alert(obj.height);    if(obj.address != undefined) alert(obj.address);    if(obj.hoppy != undefined) alert(obj.hoppy);}//此时仅仅是创建了方法,并没有调用,所以:box(obj);//另外可以通过直接将对象作为参数,传给函数,此时对象没有声明,这就是一个匿名对象。box({    name : '小明',    age : 22,    height : 182,    address : '浙江杭州',    hoppy : '音乐'}); * */
阅读全文
0 0