标签:
创建object所有基类对象
var p1=new Object();
p1.attr=‘obj‘;
属性
constructor对象构造函数
prototype类的prototype对象
var p1=new Object();
p1.constructor
p1.prototype.attr1
i1=10#等于i1=new Number(10)
var i=new Number(10)
给类添加方法
Number.prototype.add=function(a){
return this+a;
}
window.alert(i.add(10).add(30));
var b=90;
alert(b.add(40));
var s=new Array(2)
s[0]=‘a‘;
s[1]=‘b‘;
Array.prototype.finds=function(text) {
for(var i=0;i<this.length;i++){
if(text==this[i]){
return i;
}
}return -1;
}
document.write(‘a:‘+ s.find(‘a‘))
构造函数
function 类名(obj1,obj2){
this.attr1=obj1;
this.attr2=obj2;
}
var a=new 类名(obj,obj2)
a.attr1(这个和python中的class类似)
在初始化中,可以增加一个函数,如下
function js(a,b,c){
return a+b+c;
}
下面是类的实现
fuction Px(a1,b1,func){//func表示函数(js(a,b,c))
this.a=a1;
this.b=b1;
this.c=func;
}
var a=px(a1,b1,func)
a.func(a,b,c)
进一步扩展
创建对象的另一种形式
如果一个对象比较简单,可以直接创建
var a={attr:值,func:function(){txt};}
a.attr
var dog={name:‘掌上电脑‘}
doc.name
doc.func()//这个是函数
exr
var d={a:‘aa‘}
function text(){
this.name}//这边打印显示未注册
text()//==windows.text()
text.call(d)//这样是d.text()的形式,call是调用的意思
text()
call(对象实例)。
new text()
这样调用,该函数this就是对象实例(反射)
for in的方式
循环列出的指定对象所有属性和方法
for(ain obj)
{a+obj[a]}
标签:
原文地址:http://www.cnblogs.com/mhxy13867806343/p/4373085.html