<address id="ttjl9"></address>

      <noframes id="ttjl9"><address id="ttjl9"><nobr id="ttjl9"></nobr></address>
      <form id="ttjl9"></form>
        <em id="ttjl9"><span id="ttjl9"></span></em>
        <address id="ttjl9"></address>

          <noframes id="ttjl9"><form id="ttjl9"></form>

          字面量方式和new方式的區別及用法

          2019-11-9    seo達人

          一 - 字面量方式和new方式

          ?每次創建數組或對象的時候,都能用以下兩種方法創建:咦?有什么區別呢?還有哪些可以有這兩種方法呢?我到底用哪一種呢?



          var arr = [];//字面量方法創建數組

          var arr = new Array();//實例化構造函數方法創建數組



          var obj = {};//字面量方法創建對象

          var obj = new Object();//實例化構造函數方法創建對象



          二 - 哪些對象可以new?

          ?只要存在構造函數的都可以new出來。



          var num = new Number();

          var boo = new Boolean(); 

          var str = new String(); 

          var arr = new Array(); 

          var obj = new Object(); 

          var fn = new Function();

          var reg = new RegExp();

          var date = new Date();



          基本上來說 js中對象,除了null ,undefined,其他的都是可以用new出來的。



          三 - 字面量是什么?

          字面量表示如何表達這個值,一般除去表達式,給變量賦值時,等號右邊都可以認為是字面量。



          JavaScript支持字面量,允許使用一種簡潔而可讀的記法來創建對象、數組



          字面量分為:字符串字面量(string literal )、數組字面量(array literal)和對象字面量(object literal),另外還有函數字面量(function literal)等等。



          var num = 1;

          var boo = true;

          var str = "a";

          var arr = [];

          var obj = {};

          var fn = function(){};

          var reg = /\s/g;



          四 - 兩種的區別

          字面量語法簡單,直接,優雅

          也沒有必要去使用new去調用構造方法,減少代碼,減少代碼運算量。

          那new這個操作符到底做了什么?

          var arr = new Array();

          /

          new:

                 1:var obj = {};

                 2:obj.proto = Array.prototype;

                 3:Array.call(obj);

          /



          五 - 使用哪一種?

          字面量比new

          比如:{}是字面量,可以立即求值



          而new Object()本質上是方法(只不過這個方法是內置的)調用, 既然是方法調用,就涉及到在proto鏈中遍歷該方法,當找到該方法后,又會生產方法調用必須的堆棧信息,方法調用結束后,還要釋放該堆棧。

          ————————————————


          日歷

          鏈接

          個人資料

          藍藍設計的小編 http://www.syprn.cn

          存檔

          亚洲va欧美va天堂v国产综合