国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

js中對象與函數(shù)的關系

Eirunye / 1388人閱讀

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

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

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

結論:函數(shù)是一種對象

typeof Object; // function

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

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

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

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

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

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

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

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

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

Object.__proto__ === Function.prototype;

結論一:實例對象(函數(shù))的__proto__指向Object(Function)的prototype;
結論二:對象的__proto__原型鏈 上會有一個指向 Object.prototype

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

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/98368.html

相關文章

  • js對象(二)—— 函數(shù)對象關系(認識原型鏈)

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

    tracymac7 評論0 收藏0
  • 淺談JS構造函數(shù)、原型對象(prototype)、實例屬性/方法之間關系

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

    kevin 評論0 收藏0
  • 深入學習js之——原型和原型鏈

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

    FingerLiu 評論0 收藏0
  • 深入學習js之——原型和原型鏈

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

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

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

    Mike617 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<