摘要:我們將通過一個構(gòu)造函數(shù)創(chuàng)建的對象,稱為是該類的實例孫悟空男玉兔精女奔波霸男使用可以檢查一個對象是否是一個類的實例語法對象構(gòu)造函數(shù)如果是,則返回,否則返回所有的對象都是的后代,所以任何對象和做檢查時都會返回
使用對象字面量模式來創(chuàng)建一個對象 (它也叫“單例模式” //JS與其他語言的單例模式有很大的區(qū)別(如Java),但這就是語言的區(qū)別)
var obj = {}; /* * 使用對象字面量,可以在創(chuàng)建對象時,直接指定對象中的屬性 * 語法:{屬性名:屬性值,屬性名:屬性值....} * 對象字面量的屬性名可以加引號也可以不加,建議不加, * 如果要使用一些特殊的名字,則必須加引號 * * 屬性名和屬性值是一組一組的名值對結(jié)構(gòu), * 名和值之間使用:連接,多個名值對之間使用,隔開 * 如果一個屬性之后沒有其他的屬性了,就不要寫, */
var obj2 = { name:"Julius", age:23, gender:"男", test:{name:"chen"} };
使用構(gòu)造函數(shù)創(chuàng)建對象 (使用new關鍵字調(diào)用的函數(shù),是構(gòu)造函數(shù)constructor
構(gòu)造函數(shù)是專門用來創(chuàng)建對象的函數(shù)
使用typeof檢查一個對象時,會返回object)
var obj = new Object(); //向obj中添加一個name屬性 obj.name = "黎海霞同學"; //向obj中添加一個gender屬性 obj.gender = "女"; //向obj中添加一個age屬性 obj.age = secret;
使用工廠方法創(chuàng)建對象,通過該方法可以大批量的創(chuàng)建對象
function createPerson(name , age ,gender){ //創(chuàng)建一個新的對象 var obj = new Object(); //向?qū)ο笾刑砑訉傩? obj.name = name; obj.age = age; obj.gender = gender; obj.sayName = function(){ alert(this.name); }; //將新的對象返回 return obj; } var obj2 = createPerson("豬八戒",28,"男"); var obj3 = createPerson("白骨精",16,"女"); var obj4 = createPerson("蜘蛛精",18,"女");
使用構(gòu)造函數(shù)創(chuàng)建對象 (
* 使用工廠方法創(chuàng)建的對象,使用的構(gòu)造函數(shù)都是Object * 所以創(chuàng)建的對象都是Object這個類型, * 就導致我們無法區(qū)分出多種不同類型的對象) * 創(chuàng)建一個構(gòu)造函數(shù),專門用來創(chuàng)建Person對象的 * 構(gòu)造函數(shù)就是一個普通的函數(shù),創(chuàng)建方式和普通函數(shù)沒有區(qū)別, * 不同的是構(gòu)造函數(shù)習慣上首字母大寫 * * 構(gòu)造函數(shù)和普通函數(shù)的區(qū)別就是調(diào)用方式的不同 * 普通函數(shù)是直接調(diào)用,而構(gòu)造函數(shù)需要使用new關鍵字來調(diào)用 * * 構(gòu)造函數(shù)的執(zhí)行流程: * 1.立刻創(chuàng)建一個新的對象 * 2.將新建的對象設置為函數(shù)中this,在構(gòu)造函數(shù)中可以使用this來引用新建的對象 * 3.逐行執(zhí)行函數(shù)中的代碼 * 4.將新建的對象作為返回值返回 * * 使用同一個構(gòu)造函數(shù)創(chuàng)建的對象,我們稱為一類對象,也將一個構(gòu)造函數(shù)稱為一個類。 * 我們將通過一個構(gòu)造函數(shù)創(chuàng)建的對象,稱為是該類的實例
function Person(name , age , gender){
this.name = name; this.age = age; this.gender = gender; this.sayName = function(){ alert(this.name); }; } function Dog(){ } var per = new Person("孫悟空",18,"男"); var per2 = new Person("玉兔精",16,"女"); var per3 = new Person("奔波霸",38,"男"); var dog = new Dog(); /*console.log(per); console.log(dog);*/ /* * 使用instanceof可以檢查一個對象是否是一個類的實例 * 語法: * 對象 instanceof 構(gòu)造函數(shù) * 如果是,則返回true,否則返回false */ //console.log(per instanceof Person); //console.log(dog instanceof Person); * 所有的對象都是Object的后代, * 所以任何對象和Object做instanceof檢查時都會返回true
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/101079.html
摘要:不知道標題如何取,正好看到默認的,那就開始第一次奔跑搬磚三年,會偶爾寫寫博客來記錄一下學習的歷程。 不知道標題如何取,正好看到默認的,那就開始第一次奔跑 搬磚三年,會偶爾寫寫博客來記錄一下學習的歷程。 之前在博客園(上學期間)和CSDN都有寫過,也有一段時間自己搭建,但是隨著博客園頁面越看越難受和CSDN的廣告越來越多,以及考慮搭建服務器的成本,最后選擇轉(zhuǎn)移到思否上繼續(xù)進行日常生活,學...
摘要:晚上又不想看書屋里光線不好,最近正好在跟著權(quán)哥學習和,不如自己寫一個以后能用到的后臺模板來玩玩練練手。把重寫成不太確定,明天去問問權(quán)哥,哎呀寫文檔是真的有用把這個文件和文件都拖到網(wǎng)站根目錄下,然后把中的加載框架引導文件改成正確讀取的路徑。 今天下班回來走在路上,剛下過雨,又出了太陽。 步行從公司到租的房子里,路過人民公園,空氣一度讓人覺的這根本不是鄭州的樣子。公司里有些讓人不快的事情也...
摘要:尤其是喬布斯在年發(fā)布的一篇的文章。喬布斯在里面寫下了關于的一點看法,說明自己為什么不使用,談到關于的一些問題,比如開放性,安全性,對于設備續(xù)航的影響,不利于觸摸屏,等等。終于,于年月日,爸爸也放棄治療了,宣布將于年正式退休。 今天為大家分享一下html5中的視頻(video)與音頻(audio)。在進入主題之前我們先了解一下Flash與html5這兩種技術(shù)的時代背景與發(fā)展歷史。 1.前...
摘要:尤其是喬布斯在年發(fā)布的一篇的文章。喬布斯在里面寫下了關于的一點看法,說明自己為什么不使用,談到關于的一些問題,比如開放性,安全性,對于設備續(xù)航的影響,不利于觸摸屏,等等。終于,于年月日,爸爸也放棄治療了,宣布將于年正式退休。 今天為大家分享一下html5中的視頻(video)與音頻(audio)。在進入主題之前我們先了解一下Flash與html5這兩種技術(shù)的時代背景與發(fā)展歷史。 1.前...
閱讀 3093·2021-10-19 11:46
閱讀 1042·2021-08-03 14:03
閱讀 3049·2021-06-11 18:08
閱讀 2985·2019-08-29 13:52
閱讀 2898·2019-08-29 12:49
閱讀 574·2019-08-26 13:56
閱讀 991·2019-08-26 13:41
閱讀 908·2019-08-26 13:35