天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

Javascript 使用function定義構造函數

Javascript中創建對象的語法是在new運算符的后面跟著一個函數的調用。如
復制代碼 代碼如下:
var obj = new Object();
var date = new Date();

運算符new首先創建一個新的沒有任何屬性的對象,然后調用該函數,把新的對象作為this關鍵字的值傳遞。
復制代碼 代碼如下:
var date = new Date()的偽代碼的實現就是
var obj = {};
var date = Date.call(obj);

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

然后,可以使用new運算符調用這個函數來創建對象的實例
復制代碼 代碼如下:
var rect = new Rectange(4,8);

構造函數的返回值
Javascript中的構造函數通常沒有返回值。但是,函數是允許有返回值的。如果一個構造函數有一個返回值,則返回的對象成為new表達式的值。在此情況下,作為this的對象將會被拋棄。

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

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

構造函數通常可以初始化對象中的一些內容,JavaScript內部提供的一些對象通常需要使用構造函數的方法生成。JavaScript函數的內容將在下一章介紹。

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

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

使用定義法定義的對象示例
復制代碼 代碼如下:
var site = {};
site.URL = "www.jb51.NET";
site.name = "腳本之家";
site.englishname = "jb51";
site.author = "腳本";
site.summary = "免費的網頁設計教程";
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+"已經"+theage+"歲了!")}

使用構造函數創建JavaScript對象示例 -- 可以嘗試編輯
使用構造函數創建JavaScript對象
上面的方法定義了一個site的對象,并且為其定義了七個屬性,與兩個個方法。

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

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

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

JavaScript技術Javascript 使用function定義構造函數,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 德国美女密密麻麻浓毛 | 亚欧日韩毛片在线看免费网站 | 国产又粗又猛又爽又黄的免费视频 | 日久精品不卡一区二区 | 色欲av蜜臀av高清 | 99久久免费视频6 | 东北老妇xxxxhd | 99热.com | 琪琪电影午夜理论片YY6080 | 最新国产麻豆精品 | 亚洲国产欧美日韩在线一区 | 色色色五的天 | 亚洲H成年动漫在线观看不卡 | 中文无码不卡的岛国片国产片 | gratis videos欧美最新 | 羽月希被黑人吃奶dasd585 | 欧美最猛性XXX孕妇 欧美最猛性xxxxx亚洲精品 | 亚洲AV无码乱码国产麻豆P | 亚洲无吗精品AV九九久久 | 老师掀开短裙让我挺进动态 | 在线涩涩免费观看国产精品 | 乐乐亚洲精品综合影院 | 四虎永久精品视频在线 | 肉蒲团从国内封禁到日本成经典 | 蜜桃传媒在线观看入口 | 国产Av男人的天堂精品良久 | 成人免费视频无遮挡在线看 | 色橹橹欧美在线观看视频高清 | 午夜十八岁禁 | 国产短视频精品区 | 日韩人妻无码精品久久中文字幕 | 国产高清在线露脸一区 | 色偷偷综合网 | 国产毛A片久久久久久无码 国产毛A片啊久久久久久A | 无码99久热只有精品视频在线 | 免费精品一区二区三区在线观看 | 欧美内射深插日本少妇 | 亚洲欧美精品无码大片在线观看 | 久久久WWW免费人成精品 | 最近日本免费观看MV免费 | 国产精品白浆精子流水合集 |