方法一:通過(guò)var object={} 對象字面量
(1),可以叫對象直接量來(lái)自定義一個(gè)對象。對象自面量是一個(gè)表達式,這個(gè)表達式的每次運算都創(chuàng )建并初始化一個(gè)新對象。
var user = { x:1,y:2,z:3,pp:function(){ alert("22222222") }}
//用字面量定義一個(gè)對象,是以名值對的方式來(lái)保存的
alert(user.y) //調用屬性
user.pp() //調用方法
(2) var student = { //還可以換行寫(xiě),每義定一個(gè)屬性名和值,用逗號分開(kāi),最后一個(gè)不加逗號,加了會(huì )被忽略,但在ie中會(huì )報錯,最好不要加
"x":1, //定義屬性名的時(shí)候可以用雙引號
'y':2, //定義屬性名的時(shí)候可以用單引號
z:12.3, //定義屬性名的時(shí)候可以加任何
"for":"使用關(guān)鍵字來(lái)定義屬性名要加上引號", //使用關(guān)鍵字定義的話(huà)必須加上雙引號 man:{ //對象里面還可以簽到對象
text:null, //對象的屬性值可以是多種數據類(lèi)型
text2:undefined,
married:true
},
dd:function(){alert("33333333")}
}
alert(student.x)
student.dd()
方法二:通過(guò) var obj = new Object();創(chuàng )建對象
1、創(chuàng )建一個(gè)空白的Object對象
寫(xiě)法1:var obj = new Object();
寫(xiě)法2:var obj = {};
2、給創(chuàng )建的對象添加屬性和方法
var obj = {};
obj.name = '小明'; //屬性
obj.showName = function(){ //方法
alert(this.name);
};
obj.showName(); //方法的調用
==========================================
1 <script>
2 var obj = new Object() //創(chuàng )建了一個(gè)對象,object對象也是對象中的頂級對象
3 var arry = new Array() //創(chuàng )建了一個(gè)數組對象
4 var date = new Date() //創(chuàng )建一個(gè)時(shí)間對象
5 var reg = new RegExp("js") //創(chuàng )建一個(gè)正則對象6
</script>
==========================================
===========================================
通過(guò)object.create來(lái)創(chuàng )建對象
1 <script>
2 var obj = Object.create({x:1})
3 var obj = Object.create(null) //創(chuàng )建了一個(gè)沒(méi)有原型的對象,沒(méi)有任何方法
4 var obj = Object.create(obj.prototype) //創(chuàng )建了一個(gè)普通的空對象
5 </script>
===========================================
方法三:通過(guò)構造函數來(lái)創(chuàng )建對象
通過(guò)instanceof操作符可以檢測一個(gè)對象是否由某個(gè)指定的構造器函數來(lái)創(chuàng )建的對象
注意:
使用的時(shí)候可以通過(guò)new操作符得到對象。
用構造器創(chuàng )建對象的時(shí)候可以接收參數
構造器函數的首首字母最好大寫(xiě),區別其他的一般函數
function Person(name,age){ //創(chuàng )建一個(gè)person的函數
this.name =name; //此處的this對應的是對象obj
this.age = age
}
var obj = new Person("ziksang",21) //用一個(gè)構造函數來(lái)創(chuàng )建了對象
alert(obj.name) //=>ziksang 用對象名.對象的屬性來(lái)獲得屬性值
alert(typeof obj) //=>用typeof來(lái)檢測obj是不是一個(gè)對象類(lèi)型, 返回object
alert(obj instanceof Person) //=> 用instanceof 來(lái)檢測objcet是不是person函數構造出來(lái)的對象,返回true
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
方法(1)==方法(2)
(1)
var obj = new Object();
obj.name = "孫悟空";
obj.age = 18;
obj.sayName = function(){ alert(obj.name); };
function fun(){ alert(obj.name); };
obj.sayName();
fun();
(2)
var obj2 = {
name:"豬八戒",
age:18,
sayName:function(){ alert(obj2.name); }
};
obj2.sayName();
聯(lián)系客服