在js中,
创建对象的创建并不总是类对象的创建。js对象强调复合
类型,js中对象的创建和对对象的访问非常灵活。
js对象是一个复合类型,它允许您通过变量名存储和访问,另一方面,对象是一组无序的
属性,通过名称和值组成来
设置每个条目(听起来像我们
经常听到哈希表和字典、健康/值对)其中的值类型可能是内置类型(如数字、字符串)或对象。
1。用一对大括号围起来
复制代码代码如下所示:
无功emptyobj = { };
VaR myobj时=
{
1、'id': / /属性名称加上引号,属性以逗号分隔
名称:'myname
};
/ / var m =新(myobj时); / /不
支持 我不知道你是否注意到对象是用不一样的东西来声明的,就像上面的代码一样,它只是声明一个对象。它只有一份。不能像实例化的类对象那样使用新的
操作,如上面代码的注释部分,这极大地限制了对象的重用,除非您只构建对象的一个副本,或者考虑其他构建对象的
方法。
下面
介绍如何访问对象的属性和方法。
复制代码代码如下所示:
VaR myobj时=
{
身份证:1,
乐趣:
函数(){
document.writeln(this.id + +这个
名字); / / 对象。访问属性
},
名称:'myobj,
关系:函数(){
Document.writeln(本{ 'id' }这个{ 'name' } + +); / /设置访问
}
};
MyObj.fun();
myobj.fun1();
结果
1-myobj / / 1 + myobj时
二、使用函数关键字
模拟类
在函数中,当前对象被引用,属性由属性的值声明。如果变量是用VaR声明的,变量是一个局部变量,只允许在类定义中调用。
复制代码代码如下所示:
功能MyClass(){
this.id = 5;
this.name = 'myclass;
this.getname =函数(){
返回this.name;
}
}
我= new MyClass()功;
警戒(我的ID);
警报(my.getname());
结果
/ / 5
/ / MyClass
三。在函数体中创建一个对象,声明它的属性然后返回
在函数中创建对象可以使用第一个点方法或第一个新对象(),然后将值赋给每个属性。
但这种方式创建的对象不是
智能在VS2008 SP1。
复制代码代码如下所示:
功能MyClass(){
var obj =
{
身份证:2,
名称:'myclass
};
返回对象;
}
功能_myclass(){
var obj =新的对象();
obj.id = 1;
obj.name = '_myclass;
返回对象;
}
我= new MyClass()功;
无功_my =新_myclass();
警戒(我的ID);
警戒(我的名字);
警报(_my。ID);
警报(_my。名称);
结果
2
/ / MyClass
1
/ / _myclass