亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

js中對(duì)象與函數(shù)的關(guān)系

Eirunye / 1437人閱讀

摘要:問題引入分析某源碼的時(shí)候看到這樣一段代碼,突然一個(gè)問題萌發(fā)了中對(duì)象與函數(shù)到底有什么樣的關(guān)系首先看幾段代碼結(jié)論函數(shù)是一種對(duì)象結(jié)論是一種函數(shù)結(jié)論對(duì)象又可以通過函數(shù)來創(chuàng)建根據(jù)的解釋中所有事物都是對(duì)象,這樣以來都已經(jīng)繞暈了。

問題引入:new Function("msg","alert(msg)");
分析某源碼的時(shí)候看到這樣一段代碼,突然一個(gè)問題萌發(fā)了:js中對(duì)象與函數(shù)到底有什么樣的關(guān)系;
首先看幾段代碼:

function test() {};
console.log(test instanceof Object);    //    true

結(jié)論:函數(shù)是一種對(duì)象

typeof Object; // function

結(jié)論:Object是一種函數(shù)

function test() {
    this.name="test"
};
var obj = new test();

結(jié)論:對(duì)象又可以通過函數(shù)來創(chuàng)建

根據(jù)W3C的解釋JS中所有事物都是對(duì)象,這樣以來都已經(jīng)繞暈了。

其實(shí)后來仔細(xì)回味想想他們之前并沒有矛盾:
前提條件,函數(shù)是一種特殊的對(duì)象,每次加圓括號(hào)時(shí)可以調(diào)用一段代碼段;
js給我們提供了兩個(gè)函數(shù)
1.Function,讓我們來創(chuàng)造函數(shù)(特殊的對(duì)象) 如 new Funtion();

2.Object,讓我們來創(chuàng)造普通的對(duì)象, 如 new Object();

Function中有個(gè)屬性prototype 所有函數(shù)的__proto__ 屬性都指向改屬性 如:

function test() {};
test.__proto__ === Function.prototype;

test.__proto__... === Object.prototype;

Object.__proto__ === Function.prototype;

結(jié)論一:實(shí)例對(duì)象(函數(shù))的__proto__指向Object(Function)的prototype;
結(jié)論二:對(duì)象的__proto__原型鏈 上會(huì)有一個(gè)指向 Object.prototype

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/98368.html

相關(guān)文章

  • js對(duì)象(二)—— 函數(shù)對(duì)象關(guān)系(認(rèn)識(shí)原型鏈)

    摘要:還是先看一些說法和描述中,一切都是對(duì)象,函數(shù)也是對(duì)象,數(shù)組也是對(duì)象,但是數(shù)組是對(duì)象的子集。對(duì)象都是由函數(shù)創(chuàng)建的。 首先,結(jié)合之前的一篇博客js對(duì)象(一)——?jiǎng)?chuàng)建對(duì)象開頭,為了理解對(duì)象,拋出了一系列比較繞的概念,即對(duì)象和函數(shù)的關(guān)系,搞清楚了這個(gè)問題,可能才算真正理解了什么是對(duì)象,什么是函數(shù)。還是先看一些說法和描述: JavaScript中,一切都是對(duì)象,函數(shù)也是對(duì)象,數(shù)組也是對(duì)象,但是數(shù)...

    tracymac7 評(píng)論0 收藏0
  • 淺談JS構(gòu)造函數(shù)、原型對(duì)象(prototype)、實(shí)例屬性/方法之間關(guān)系

    摘要:同時(shí)給該構(gòu)造函數(shù)自動(dòng)添加一個(gè)屬性,該屬性為指針,指向原型對(duì)象。總結(jié)構(gòu)造函數(shù)中的屬性和方法僅為聲明和定義,一旦實(shí)例化工作完成后。實(shí)例對(duì)象自身的屬性和方法與構(gòu)造函數(shù)將不在存在關(guān)聯(lián)關(guān)系。 構(gòu)造函數(shù):函數(shù)中的一種,通過關(guān)鍵字new可以創(chuàng)建其實(shí)例。為了便于區(qū)分,通常首字母大寫;原型對(duì)象:一種特殊的對(duì)象,構(gòu)造函數(shù)創(chuàng)建時(shí)即自動(dòng)生成;與構(gòu)造函數(shù)形成一一對(duì)應(yīng),如同人和影子般的關(guān)系;實(shí)例:通過構(gòu)造函數(shù)實(shí)例...

    kevin 評(píng)論0 收藏0
  • 深入學(xué)習(xí)js之——原型和原型鏈

    摘要:我們用一張圖表示構(gòu)造函數(shù)和實(shí)例原型之間的關(guān)系好了構(gòu)造函數(shù)和實(shí)例原型之間的關(guān)系我們已經(jīng)梳理清楚了,那我們?cè)趺幢硎緦?shí)例與實(shí)例原型,也就是或者和之間的關(guān)系呢。 開篇: 在Brendan Eich大神為JavaScript設(shè)計(jì)面向?qū)ο笙到y(tǒng)的時(shí)候,借鑒了Self 和Smalltalk這兩門基于原型的語言,之所以選擇基于原型的面向?qū)ο笙到y(tǒng),并不是因?yàn)闀r(shí)間匆忙,它設(shè)計(jì)起來相對(duì)簡單,而是因?yàn)閺囊婚_始B...

    FingerLiu 評(píng)論0 收藏0
  • 深入學(xué)習(xí)js之——原型和原型鏈

    摘要:我們用一張圖表示構(gòu)造函數(shù)和實(shí)例原型之間的關(guān)系好了構(gòu)造函數(shù)和實(shí)例原型之間的關(guān)系我們已經(jīng)梳理清楚了,那我們?cè)趺幢硎緦?shí)例與實(shí)例原型,也就是或者和之間的關(guān)系呢。 開篇: 在Brendan Eich大神為JavaScript設(shè)計(jì)面向?qū)ο笙到y(tǒng)的時(shí)候,借鑒了Self 和Smalltalk這兩門基于原型的語言,之所以選擇基于原型的面向?qū)ο笙到y(tǒng),并不是因?yàn)闀r(shí)間匆忙,它設(shè)計(jì)起來相對(duì)簡單,而是因?yàn)閺囊婚_始B...

    xialong 評(píng)論0 收藏0
  • Vue 數(shù)據(jù)響應(yīng)式原理

    摘要:接下來,我們就一起深入了解的數(shù)據(jù)響應(yīng)式原理,搞清楚響應(yīng)式的實(shí)現(xiàn)機(jī)制?;卣{(diào)函數(shù)只是打印出新的得到的新的值,由執(zhí)行后生成。及異步更新相信讀過前文,你應(yīng)該對(duì)響應(yīng)式原理有基本的認(rèn)識(shí)。 前言 Vue.js 的核心包括一套響應(yīng)式系統(tǒng)。 響應(yīng)式,是指當(dāng)數(shù)據(jù)改變后,Vue 會(huì)通知到使用該數(shù)據(jù)的代碼。例如,視圖渲染中使用了數(shù)據(jù),數(shù)據(jù)改變后,視圖也會(huì)自動(dòng)更新。 舉個(gè)簡單的例子,對(duì)于模板: {{ name ...

    Mike617 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<