1.对象字面量创建对象
var
obj
=
{
a:1,b:2
}
注意:对象字面量是一个表达式,这种表达式每次运算都会创建并初始化一个新对象,并计算这个新对象的每个属性值。所以如果在循环体内使用对象字面量,每次循环时都会创建新对象。
2.通过new运算符创建对象
var
obj
=
new
object()
//创建空对象
var
ary
=
new
array()
//创建空的数组对象
注意:new运算符后面跟的是一个函数调用,这个函数被称为构造函数。js中原始类型都包含内置的构造函数,也可以自己定义构造函数。
3.通过立即执行函数创建对象
var
obj
=
(function(){
return
{x:1,y:2}}())
注意:在立即执行函数内部一定要有return语句,return出的内容就是待创建的对象。
//js中创建对象有两种方法:
//1、对象字面量法
var o1={name:"aaa",age:17}
//2、构造函数法
var o2=new Object()
o2.name="bbb"
o2.age=20
1.对象的字面量的形式var obj = {}
2.new 的方式来调用构造函数的形式
Object是个构造函数var obj = new Object()obj.name = '黄忠'
3.工厂方法
function fn (name) {// 1. 创建一个空对象
var obj = new Object()
// 2. 给对象添加属性和方法
obj.name = name
// 3. 返回一个obj对象
return obj
}
4.构造函数
帕斯卡命名 第一个单词的第一个字母大写,后续的每一个单词的第一个字母都大写
通过this动态的给构造函数添加属性和方法
function Hero(name, weapon, equipment, blood) {// this 动态的给对象增加成员
// this 指向了当前对象
this.name = name
this.weapon = weapon
this.equipment = equipment
this.blood = blood
this.attack = function () {
console.log(this.name + ':攻击')
}
this.run = function () {
console.log(this.name + ': 加速跑')
}
}
var hero1 = new Hero('黄忠', '弓箭', ['头盔', '靴子'], 100)