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

資訊專欄INFORMATION COLUMN

js中對象與函數的關系

Eirunye / 1395人閱讀

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

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

</>復制代碼

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

結論:函數是一種對象

</>復制代碼

  1. typeof Object; // function

結論:Object是一種函數

</>復制代碼

  1. function test() {
  2. this.name="test"
  3. };
  4. var obj = new test();

結論:對象又可以通過函數來創建

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

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

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

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

</>復制代碼

  1. function test() {};
  2. test.__proto__ === Function.prototype;
  3. test.__proto__... === Object.prototype;
  4. Object.__proto__ === Function.prototype;

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

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/98368.html

相關文章

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

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

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

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

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

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

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

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

    xialong 評論0 收藏0
  • Vue 數據響應式原理

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

    Mike617 評論0 收藏0

發表評論

0條評論

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