亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript創(chuàng)建類/對象的幾種方式概述及實例

 更新時間:2013年05月06日 17:56:24   作者:  
JS中的對象強(qiáng)調(diào)的是一種復(fù)合類型,JS中創(chuàng)建對象及對對象的訪問是極其靈活的,下面與大家分享下創(chuàng)建類/對象的幾種方式,感興趣的朋友可以了解下哈
在JS中,創(chuàng)建對象(Create Object)并不完全是我們時常說的創(chuàng)建類對象,JS中的對象強(qiáng)調(diào)的是一種復(fù)合類型,JS中創(chuàng)建對象及對對象的訪問是極其靈活的。

JS對象是一種復(fù)合類型,它允許你通過變量名存儲和訪問,換一種思路,對象是一個無序的屬性集合,集合中的每一項都由名稱和值組成(聽起來是不是很像我們常聽說的HASH表、字典、健/值對?),而其中的值類型可能是內(nèi)置類型(如number,string),也可能是對象。
一、由一對大括號括起來
復(fù)制代碼 代碼如下:

var emptyObj = {};
var myObj =
{
'id': 1, //屬性名用引號括起來,屬性間由逗號隔開
'name': 'myName'
};
//var m = new myObj(); //不支持

 不知你注意到對象都是用 var 聲明的沒有,像上面的代碼,就只是簡單的聲明一個對象,它只有一份拷貝,你不能像實例化類對象一樣對它采用new操作,像上面代碼的注釋部分。這樣就極大的限制了對象的重用,除非你建立的對象只需要一份拷貝,否則考慮用其他方法建立對象。
  下面一起看看如何訪問對象的屬性和方法。
復(fù)制代碼 代碼如下:

var myObj =
{
'id': 1,
'fun': function() {
document.writeln(this.id + '-' + this.name);//以"對象.屬性"方式訪問
},
'name': 'myObj',
'fun1': function() {
document.writeln(this['id'] + '+' + this['name']);//以集合方式訪問
}
};
myObj.fun();
myObj.fun1();
// 結(jié)果
// 1-myObj 1+myObj

二、用 function 關(guān)鍵字模擬 class
在 function 中用 this 引用當(dāng)前對象,通過對屬性的賦值來聲明屬性。如果用var聲明變量,則該變量為局部變量,只允許在類定義中調(diào)用。
復(fù)制代碼 代碼如下:

function myClass() {
this.id = 5;
this.name = 'myclass';
this.getName = function() {
return this.name;
}
}
var my = new myClass();
alert(my.id);
alert(my.getName());
// 結(jié)果
// 5
// myclass

三、在函數(shù)體中創(chuàng)建一個對象,聲明其屬性再返回
在函數(shù)體中創(chuàng)建對象可利用第一點的方法,或先 new Object(); 再為各屬性賦值。
不過用這種方式創(chuàng)建的對象在VS2008 SP1中是沒有智能提示的。
復(fù)制代碼 代碼如下:

function myClass() {
var obj =
{
'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);
// 結(jié)果
// 2
// myclass
// 1
// _myclass

相關(guān)文章

  • 微信小程序單選框組應(yīng)用詳解

    微信小程序單選框組應(yīng)用詳解

    這篇文章主要為大家詳細(xì)介紹了微信小程序單選框組應(yīng)用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • asp.net和asp下ACCESS的參數(shù)化查詢

    asp.net和asp下ACCESS的參數(shù)化查詢

    最近因項目需要用ACCESS做數(shù)據(jù)庫開發(fā)WEB項目看論壇上還許多人問及ACCESS被注入的安全問題 許多人解決的方法仍然是用Replace替換特殊字符,然而這樣做也并沒有起到太大做用
    2008-06-06
  • 學(xué)習(xí)LayUI時自研的表單參數(shù)校驗框架案例分析

    學(xué)習(xí)LayUI時自研的表單參數(shù)校驗框架案例分析

    本框架基于LayUI框架寫的表單參數(shù)校驗框架,本文分過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友參考下吧
    2019-07-07
  • onmousewheel event 縮放圖片效果

    onmousewheel event 縮放圖片效果

    onmousewheel event 縮放圖片效果...
    2006-09-09
  • 分享12個非常實用的JavaScript小技巧

    分享12個非常實用的JavaScript小技巧

    這篇文章主要介紹了分享12個非常實用的JavaScript小技巧,這些小技巧可能在你的實際工作中或許能幫助你解決一些問題,需要的朋友可以參考下
    2016-05-05
  • js實現(xiàn)連連看游戲

    js實現(xiàn)連連看游戲

    這篇文章主要為大家詳細(xì)介紹了js實現(xiàn)連連看游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • JavaScript?split()方法定義及更多實例

    JavaScript?split()方法定義及更多實例

    這篇文章主要給大家介紹了關(guān)于JavaScript?split()方法定義及更多實例的相關(guān)資料,js里的split()方法大家都知道用于將字符串轉(zhuǎn)化為字符串?dāng)?shù)組,文中通過代碼實例介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • Bootstrap table的使用方法

    Bootstrap table的使用方法

    這篇文章主要為大家詳細(xì)解析了JS組件Bootstrap Table使用方法,具有一定的實用性和參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Javascript直接定義對象實例[

    Javascript直接定義對象實例[

    Javascript直接定義對象實例[...
    2006-12-12
  • js對象數(shù)組按屬性快速排序

    js對象數(shù)組按屬性快速排序

    前一篇《關(guān)于selector性能比賽》中提到,目測覺得在$("div,p,a")這樣有逗號時,sizzle耗時異常(600多個元素,花了200ms),說是它可能沒有優(yōu)化ie下的排序。
    2011-01-01

最新評論