色尼玛亚洲综合影院,亚洲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| 和平区|