色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

javascript必知必會之prototype

  摘要

  本系列博文主要談一些在 Javascript 使用中經常會混淆的高級應用,包括: prototype, closure, scope, this關鍵字. 對于一個需要提高自己Javascript水平的程序員,這些都是必須要掌握的.

  本節主要介紹prototype.

  起由

  最近在做一個項目,里面大量地使用 Javascript 作為頁面的動態生成腳本, 使用 json 與服務器進行通信. 在讀之前遺留的代碼時, 經常會弄不清楚, 作用域, this關鍵字在當前context下的指向等,于是便開始專門學習了 相關的知識,記錄下來與大家分享.

  下面的內容中會有一些代碼,建議大家也去嘗試修改和理解,這樣更容易掌握.

  prototype

  Javascript 是一種 prototype based programming 的語言, 而與我們通常的 class based programming 有很大 的區別,我列舉重要的幾點如下:

  1. 函數是first class object, 也就是說函數與對象具有相同的語言地位
  2. 沒有類,只有對象
  3. 函數也是一種對象,所謂的函數對象
  4. 對象是按 引用 來傳遞的。

  那么這種 prototype based programming 的語言如何實現繼承呢(OO的一大基本要素), 這也便是 prototype 的由來.

  看下面的代碼片斷:

function foo(a, b, c)
{
return a*b*c;
}
alert(foo.length);
alert(
typeof foo.constructor);
alert(
typeof foo.call);
alert(
typeof foo.apply);
alert(
typeof foo.prototype);

it知識庫javascript必知必會之prototype,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 镇赉县| SHOW| 桦甸市| 安福县| 卓资县| 凤凰县| 馆陶县| 岳普湖县| 新营市| 池州市| 墨竹工卡县| 南昌市| 朔州市| 六盘水市| 张家港市| 谢通门县| 抚宁县| 南靖县| 江北区| 万盛区| 新竹市| 乳源| 嘉义县| 平罗县| 海阳市| 黄大仙区| 宁河县| 酉阳| 色达县| 揭阳市| 新郑市| 灌云县| 油尖旺区| 韩城市| 含山县| 岑溪市| 柳河县| 澄迈县| 台安县| 秦皇岛市| 贵港市|