面向对象的javascript(笔记) |
本文标签:面向对象 一、引用 复制代码 代码如下: //产生一个数组对象 var items = new Array(1,2,3); //使一个引用指向该对象 var itemRef = items; items.push(4); //items 与 itemRef指向同一对象 alert(items.length === itemRef.length); // 修改对象会产生一个新对象 var item = test; var itemRef = item; item+=ing; //此时item和itemRef不再指向同一个对象 alert(item != itemRef); 二、判断传入参数的数量及类型 复制代码 代码如下: //arguments 能用了判断函数参数的个数 function sendMessage(msg,obj){ if(arguments.length ==2) obj.handleMsg(msg); else alert(msg); } 判断类型可以使用typeof和javascript对象的constructor属性 复制代码 代码如下: //typeof能用一个字符串表达变量的类型名 //判断一个变量num是否是string 类型 if(typeof num == string) //但是typeof对都是object array类型不能区分 //利用constructor 判读num是否是String类型 if(num.constructor == String) if(num.constructor == Array) //该函数判断一个函数的变量的长度和变量类型 function strict(types,args){ if(types.length != args.length){ throw "参数个数无效"; } for(var i=0; i<args.length; i++){ if(args[i].constructor != types[i]){ throw 参数类型不匹配 } } } |