javaScript進階程式設計第3版筆記

來源:互聯網
上載者:User

標籤:引用   value   技術   範圍   object   分配   ...   var   分享圖片   

<script src = "xxx.js" defer = "defer"> </script>

在引用外部script時,<script src = "">內部不能再有代碼,瀏覽器只載入外部檔案</script>

defer 屬性只實用於外部js引用情景;屬性功能指定下載js代碼,直到載入完頁面內容才載入js檔案;

變數範圍

  • A只能訪問a
  • B只能訪問a, b
  • C只能訪問a, b, c
  • D只能訪問a, d

在javaScript中沒有塊範圍,只有函數範圍

for(var i = 0; i < 10; i++)

{

  ......

};

alret(i); // i = 9;//i的範圍屬於上層範圍;

用var 申明的變數會自動放入最接近的範圍中(所在函數內部),而未使用var申明的變數.都是全域變數

資料類型

基本類型(undefined, Null, Boolean, Number, String)

參考型別(Object, Array, Date, RegExp, Function, )

  var obj = new Object();

var arr = new Array();

var arr = new Array(5); //分配長度

var arr = new Array("init", "init1"); //建立並初始化

var time = new Date(); //返回當前系統時間

var re = new RegExp(); //Regex類型

Math對象

Math.PI //派的值

Math.max("5", "4", "8", "...");//返回最大值(可以理解為靜態成員方法)

Math.min("...");//返回最大值

對象

Object.defineProperty(obj, "name", {

  writable: false,

  value: " bokeyuan"

  });

Object.defineProperty(); //靜態成員函數,用來指定成員屬性類型

  1. 第一個參數為,需要設定的對象
  2. 第二個參數為,對象屬性名稱;
  3. 第三個對象為,對象屬性類型設定

可設定的類型

  • [configurable]  //能否通過delete刪除屬性,預設true
  • [enumerable]  //能否通過for-in 迴圈返回屬性預設true
  • [writable]         //能否修改屬性值 預設true
  • [value]            //讀取屬性值時從位置讀;寫入值時,放入此位置,預設undefined;
建立對象

原廠模式(函數調用模式)

function getObj(name, face, toll)

{

  var obj = new Object();

  obj.name = name;

  obj.face = face;

  obj.toll = toll;

  //成員方法

  function ta()

  {

    return face + toll;

  }

  ....

  return obj;

}

var a1 = getObj("...","...","... ");

var a2 = getObj("...","...","... ");

建構函式模式(函數對象等效模式)

function getObj(name, age, time)

{

  this.name = name;

  this.age = age;

  this.time = time;

  function t()

  {

    return this.time++;

  }

}

var obj = new getObj("..", "..", "..");

原型模式(成員初始化模式)

function getObj()

{

  getObj.prototype.name = "...";

  getObj.prototype.age = ....;

  getObj.prototype.time = ....;

function x()

{

  .....

}

}

var obj = new getObj();

組合使用建構函式模式

動態原型模式

寄生建構函式模式

穩妥建構函式模式

繼承

原型鏈

借用建構函式

組合繼承

原型式繼承

寄生式繼承

寄生組合式繼承

 

javaScript進階程式設計第3版筆記

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.