中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

Javascript 使用function定義構(gòu)造函數(shù)

Javascript中創(chuàng)建對象的語法是在new運(yùn)算符的后面跟著一個(gè)函數(shù)的調(diào)用。如
復(fù)制代碼 代碼如下:
var obj = new Object();
var date = new Date();

運(yùn)算符new首先創(chuàng)建一個(gè)新的沒有任何屬性的對象,然后調(diào)用該函數(shù),把新的對象作為this關(guān)鍵字的值傳遞。
復(fù)制代碼 代碼如下:
var date = new Date()的偽代碼的實(shí)現(xiàn)就是
var obj = {};
var date = Date.call(obj);

構(gòu)造函數(shù)的作用就是初始化一個(gè)新創(chuàng)建的對象,并在使用對象前設(shè)置對象的屬性。如果定義自己的構(gòu)造函數(shù),只需要編寫一個(gè)為this添加屬性的函數(shù)就可以了。下面的代碼定義了一個(gè)構(gòu)造函數(shù):
復(fù)制代碼 代碼如下:
function Rectangle(w, h)
{
this.width = w;
this.height = h;
}

然后,可以使用new運(yùn)算符調(diào)用這個(gè)函數(shù)來創(chuàng)建對象的實(shí)例
復(fù)制代碼 代碼如下:
var rect = new Rectange(4,8);

構(gòu)造函數(shù)的返回值
Javascript中的構(gòu)造函數(shù)通常沒有返回值。但是,函數(shù)是允許有返回值的。如果一個(gè)構(gòu)造函數(shù)有一個(gè)返回值,則返回的對象成為new表達(dá)式的值。在此情況下,作為this的對象將會(huì)被拋棄。

使用構(gòu)造函數(shù)定義法
語法
復(fù)制代碼 代碼如下:
var object=new objectname();
var -- 聲明對象變量
object -- 對象的名稱
new -- new的關(guān)鍵詞(JavaScript關(guān)鍵詞)
objectname -- 構(gòu)造函數(shù)名稱

示例
復(fù)制代碼 代碼如下:
//定義構(gòu)造函數(shù)
function Site(url, name)
{
this.url = "www.jb51.NET";
this.name ="夢之都";
}
//使用構(gòu)造函數(shù)產(chǎn)生一個(gè)JavaScript對象的實(shí)例
var mysite = new Site();
alert(mysite.url);

構(gòu)造函數(shù)通常可以初始化對象中的一些內(nèi)容,JavaScript內(nèi)部提供的一些對象通常需要使用構(gòu)造函數(shù)的方法生成。JavaScript函數(shù)的內(nèi)容將在下一章介紹。

直接定義法創(chuàng)建JavaScript對象
復(fù)制代碼 代碼如下:
//定義對象語法
var object={};
//對象內(nèi)的屬性語法(屬性名(property)與屬性值(value)是成對出現(xiàn)的)
object.property=value;
//對象內(nèi)的函數(shù)語法(函數(shù)名(func)與函數(shù)內(nèi)容是成對出現(xiàn)的)
object.func=function(){...;};

var -- 聲明對象變量
object -- 對象的名稱
property -- 對象的屬性名
func -- 對象的方法名
說明:對象可以包含一些屬性(函數(shù)可以看作帶有括號的特殊屬性),每個(gè)屬性有名稱和值。名稱可以是任何字符串甚至是空。值可以是任何Javascript類型,但不能是undefined。

使用定義法定義的對象示例
復(fù)制代碼 代碼如下:
var site = {};
site.URL = "www.jb51.NET";
site.name = "腳本之家";
site.englishname = "jb51";
site.author = "腳本";
site.summary = "免費(fèi)的網(wǎng)頁設(shè)計(jì)教程";
site.pagescount = 100;
site.isOK = true;
site.startdate = new Date(2005, 12);
site.say = function(){alert(this.englishname+" say : hello world!")};
site.age = function(){var theage=(new Date().getFullYear())-site.startdate.getFullYear();alert(this.name+"已經(jīng)"+theage+"歲了!")}

使用構(gòu)造函數(shù)創(chuàng)建JavaScript對象示例 -- 可以嘗試編輯
使用構(gòu)造函數(shù)創(chuàng)建JavaScript對象
上面的方法定義了一個(gè)site的對象,并且為其定義了七個(gè)屬性,與兩個(gè)個(gè)方法。

say方法會(huì)打印出jb51 say : hello world!的字符串
age方法會(huì)計(jì)算出夢之都網(wǎng)站的年齡
猴子提示: 注意每個(gè)屬性與函數(shù)前面都要加上對象的名稱,否則JavaScript無法判斷它是屬于那個(gè)對象的。

下面的課程將講解直接定義法的延伸,JSON定義法。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]

JavaScript技術(shù)Javascript 使用function定義構(gòu)造函數(shù),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 精品免费国产一区二区三区四区 | 日本免费在线 | 国产你懂的在线观看 | 亚洲最新网址 | 国产一区二区 | a级黄色片在线观看 | 精品乱码一区二区 | 亚洲国产成人精品女人 | 一区二区视屏 | 欧美三级三级三级爽爽爽 | 国产自产c区 | av中文字幕在线观看 | 美国一级黄色片 | 日韩在线视频一区 | 亚洲成av| 美女爽到呻吟久久久久 | 国产黄色在线观看 | 91精品国产91综合久久蜜臀 | 日本久久综合 | 亚洲综合一区二区三区 | 一区二区三区成人 | 在线观看亚洲精品 | 成人免费大片黄在线播放 | 美女久久 | 亚洲免费在线 | 男女羞羞视频在线免费观看 | 一区二区av | 日韩国产中文字幕 | www.亚洲精品 | 超碰日本| 亚洲精品一 | 国产综合久久久 | 亚洲激精日韩激精欧美精品 | 国产不卡在线观看 | 老司机深夜福利网站 | 日韩av免费在线观看 | 国产精品精品3d动漫 | 91精品国产一区二区在线观看 | 人人看人人干 | 国产区一区 | 一区二区在线 |