首頁 >web前端 >js教程 >JavaScript建立類別/物件的幾種方式概述及實例_javascript技巧

JavaScript建立類別/物件的幾種方式概述及實例_javascript技巧

WBOY
WBOY原創
2016-05-16 17:34:42974瀏覽

在JS中,創建對象(Create Object)並不完全是我們時常說的創建類對象,JS中的對象強調的是一種複合類型,JS中創建對象及對對象的訪問是極其靈活的。

JS物件是一種複合類型,它允許你透過變數名稱儲存和訪問,換一種思路,物件是一個無序的屬性集合,集合中的每一項都由名稱和值組成(聽起來是不是很像我們常聽到的HASH表、字典、健/值對?),而其中的值類型可能是內建類型(如number,string),也可能是物件。
一、由一對大括號括起來

複製程式碼 程式碼
複製程式碼


程式碼



程式碼
var emptyObj = {};
var myObj =
{
'id': 1, //屬性名稱用引號括起來,屬性間由逗號隔開
' name': 'myName'


複製程式碼


程式碼如下:


var myObj =


var myObj =
{;>' ': 1,
'fun': function() {
document.writeln(this.id '-' this.name);//以"物件.屬性"方式存取
},
'name': 'myObj',
'fun1': function() {
document.writeln(this['id'] ' ' this['name']);//以集合方式存取}
};
myObj.fun();
myObj.fun1();
// 結果// 1-myObj 1 myObj






>
二、用function 關鍵字模擬class

在function 中用this 引用當前對象,透過對屬性的賦值來宣告屬性。如果用var宣告變量,則該變數為局部變量,只允許在類別定義中呼叫。




複製程式碼

程式碼如下:

function myClass() {
}
var my = new myClass() ;
alert(my.id);
alert(my.getName());
// 結果
// 5
// myclass



三、在函數體中創建一個對象,聲明其屬性再返回

在函數體中創建對象可利用第一點的方法,或先new Object(); 再為各屬性賦值。
不過用這種方式建立的物件在VS2008 SP1中是沒有智慧提示的。




複製程式碼


程式碼如下:


function myClass() {


function myClass() {
> 🎜>{ 'id':2, 'name':'myclass' }; return obj; } function _myClass() { var obj = new Object(); obj.id = 1; obj.name = '_myclass'; return obj; } var my = new myClass(); var _my = new _myClass(); alert(my.id); alert(my.name); alert(_my.id); alert(_my.name); // 結果// 2 // myclass // 1 // _myclass
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn