js对象详解
function Person(name)
{
_name=name;
function Show()
{
alert(this._name++);
}
return Show;
}
var x=Person(1);
x();
var myNameSpace = {}; //构造一个命名 空间myClass
//类的属性
myNameSpace.names="cnscn";
myNameSpace.age="30";
myNameSpace.ClassPersons=function(argName,argAge){ //构造类名,即构造函数
this.names=argName;
this.age=argAge;
}
myNameSpace.ClassPersons.prototype={//类方法的定义
//方法getName()
getName:function(){
alert(this.names);
}, //注意这里是"逗号"
//方法setName(argName)
setName:function(argName){
this.names=argName;
}
}
var obj=new myNameSpace.ClassPersons("yao", 23);
obj.getName();
obj.setName("hhhh");
obj.getName();
alert(myNameSpace.age);
alert(obj.age);
var r=function Person(name){
//类变量
// this.name = name;
var x=0;
this.age = 0;
this.gender = 0;
this.pets = new Array();
return x;
}
//类setName(name)的函数
Person.prototype.setName=function(name){
this.name=name;
}
//类getName(name)的函数
Person.prototype.getName=function(){
return this.name;
}
//类pushPetsArr(item)的函数
Person.prototype.pushPetsArr=function(item){
this.pets[this.pets.length] = item;
}
var p=new Person();
p.setName("zs");
alert(p.getName());
//用户操作对象
var User = {
//检查用户名
i:0,
checkusername : function(username){
alert(username);
},
//检查pw
checkpwd : function(){
alert('pwd');
}
};
//调用方法
User.checkusername('study');
//类似java的写法
function Register(options){
this.defaults = {
r:'hello',
show:'false',
city:'beijing'
};
//jquer中的方法 可以方便的判断参数 ,没有的就可以用for in循环来判断了
this.options=jQuery.extend(this.defaults,options || {});
}
Register.prototype={
//检查真实姓名
checkRealName : function(name) {
alert(this.defaults.r+name);
},
checkUrl : function() {
alert('wefji@163.com');
},
//检查性别
checkMeal : function() {
alert('you are a:'+this.defaults.r+"and come from:"+this.defaults.city);
}
}
//调用方法
var Blb = new Register({r:'ceshi',city:'henan'});//参数的形式{key1:'value1',key2:'key2'}
Blb.checkRealName('nihao');
Blb.chckUrl()
var myObject={
propertyA: 'sha' ,
propertyB: 'feng' ,
methodA:function(){
alert(this.propertyA+this.propertyB);
},
methodB:function(msg){this.propertyA=msg}
}
var myObject=new Object();
myObject.propertyA='sha';
myObject.propertyB='feng';
myObject.methodA=function(){ alert(this.propertyA+this.propertyB)};
myObject.methodB=function(msg){this.propertyA=msg}
myObject.methodA();
myObject.methodB('shiwolaosun');
myObject.methodA();