色尼玛亚洲综合影院,亚洲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,轉載需保留來源!

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

主站蜘蛛池模板: 乐都县| 盐亭县| 曲周县| 渭源县| 墨脱县| 武定县| 芦山县| 谢通门县| 和龙市| 华容县| 得荣县| 葫芦岛市| 临洮县| 连城县| 东方市| 兴海县| 莲花县| 德清县| 扶绥县| 威宁| 江都市| 分宜县| 宁远县| 祁东县| 濮阳县| 闸北区| 巴彦县| 泽普县| 惠水县| 安阳县| 房山区| 临城县| 岚皋县| 福清市| 射阳县| 龙泉市| 光山县| 商城县| 大邑县| 道孚县| 潼南县|