javascript高階程式設計讀書筆記 callee和caller的區別
1. callee重新呼叫函式,用來減少程式碼耦合度
例:階乘
function factorial(num){
if (num<=1) {
return 1;
}else{
return num*arguments.callee(num-1);
}
}
2. caller儲存呼叫當前函式的函式的引用
例:
function outer(){
inner();
}
function inner(){
alert(inner.caller());
}
outer();
會在警告框中列印outer程式碼
相關推薦
javascript高階程式設計讀書筆記 callee和caller的區別
1. callee重新呼叫函式,用來減少程式碼耦合度 例:階乘 function factorial(num){if (num<=1) {return 1;}else{return num*arguments.callee(num-1);} } 2. caller儲存
JavaScript高階程式設計讀書筆記(二)變數 作用域和記憶體
ECMAScript可能包含兩種不同的資料型別,基本資料型別指的是簡單的資料欄位,而引用型別指那些可能由多個指構成的物件。 1、基本資料型別是按值訪問的,因為可以操作儲存在變數中的實際值。 2、引用型別的是按引用訪問的,因為引用型別的值是儲存在記憶體中的物件,ECMAScript不允許直接訪問記憶體中的位
JavaScript高階程式設計讀書筆記之JSON
JSON(JavaScript Object Notation)JavaScript物件表示法。JSON是JavaScript的一個嚴格的子集,利用了JavaScript中的一些模式來表示結構化資料。關於JSON,最重要的是理解它是一種資料格式,不是一種程式語言。雖然具有相同的語法形式,但JSON並不從屬於J
javascript高階程式設計讀書筆記(1)第 1章 JavaScript 簡介
第 1章 JavaScript 簡介 1.1 JavaScript 簡史 1.2 JavaScript 實現 一個完整的 JavaScript 實現應該由下列三 個不同的部分組成(見圖 1-1)。 核心(ECMAScript) 文件物件模型(DOM)
Javascript高階程式設計--讀書筆記之面向物件(一)
哈哈哈萬物皆物件,終於到了js的面向物件篇。 一、屬性型別 (1)資料屬性 資料屬性包含一個數據值的位置,在這個位置可以寫入和讀取數值,資料屬性有四個描述器行為的特性 [[Configurable]]:表示能否通過 delete 刪除屬性而重新定義屬性,預設值是ture [[Enumerab
【總結】javascript高階程式設計 讀書筆記
2018-11-13 第1章 簡介 javascript=DOM(文件物件模型:多層節點結構)+BOM(瀏覽器物件模型)+ECMAScript ECMAScript,由ECMA-262定義,提供核心語言功能; 文件物件模型(DOM),提供訪問和操作網頁內容
javascript高階程式設計讀書筆記———建立物件
2. 建立物件的幾種方式 2.1 工廠模式 function createPeople(name, age, job) { var o = new Object(); o.
《JavaScript高階程式設計》筆記:DOM2和DOM3(十二)
DOM1級主要定義的是HTML和XML文件的底層結構。DOM2級和DOM3級在這個結構基礎上引入了更多的互動能力,也支援更高階的XML特性。為此DOM2級和DOM3級分為了很多的模組(模組直接具有某種關聯),分別描述了DOM的某個非常具體的子集。這些模組如下: DOM2級核心:在1級核心基礎上構建,為
《JavaScript高階程式設計》筆記第一部分(ECMA5)
JavaScript分三部分: ECMAScript BOM DOM 瀏覽器組成: shell 核心 主流瀏覽器: IE trident Chrome webkit/blink firefox Gecko Opera presto Safari we
python高階程式設計讀書筆記(一)
python高階程式設計讀書筆記(一) python 高階程式設計讀書筆記,記錄一下基礎和高階用法 python2和python3相容處理 使用sys模組使程式python2和python3相容 import sysver=sys.version_info#(ma
JavaScript高階程式設計學習筆記之事件
1、事件流 事件流描述的是從頁面中接收事件的順序。 事件冒泡 IE的事件流叫做事件冒泡(event bubbling),即事件開始時由最具體的元素(文件中巢狀層次最深的那個節點)接收,然後逐級向上傳播到較為不具體的節點(文件)。(DOM樹向上傳播)(通俗解釋(個人理解: 當一個元素上的事件被觸發的時候,比如
Javascript高階程式設計學習筆記(三)—— JS中的資料型別(1)
前一段時間由於事情比較多,所以筆記耽擱了一段時間,從這一篇開始我會盡快寫完這個系列。 文章中有什麼不足之處,還望各位大佬指出。 JS中的資料型別 上一篇中我寫了有關JS引入的Script標籤相關的東西。 那麼這一篇,我們可以正式進入JS的世界了,emmm 前面的東西應該比較基礎,大佬們不
高質量程式設計讀書筆記之類和物件
1.類的生命週期由類載入器載入開始,到類解除安裝結束,其中會經過連線、初始化等操作: 1.當類載入器預感到需要使用 該類時,會主動載入該類的二進位制資料,產生的結果為: 1.讀取二進位制資料到方法區; 2.在堆記憶體中生成該類對應的Class物件,用以描述方法區中二
《javascript 高階程式設計》 筆記2 8~章
chapter 8 BOM(瀏覽器物件模型) window物件 表示瀏覽器的一個例項。 直接在window物件上定義的屬性可以通過delete操作符刪除,而全域性變數不可以。 視窗關係及框架 位置操作 setTimeout(function
Javascript高階程式設計學習筆記(6)—— 流程控制語句
話不多說,我們直接開始進入今天的主題 流程控制語句 首先什麼是流程控制語句呢? 顧名思義,就是控制流程的語句。 在JS中語句定義了ECMAScript中的主要語法,讓我們可以使用一系列的關鍵字來完成指定任務。 語句也是構成一門程式語言旳基礎,所以還是有必要記錄一下的。 雖然有些語句不常用,但存在即
JavaScript高階程式設計學習筆記——建立物件的幾種方式
建立物件的幾種方式 工廠模式 function createPerson(name, age, job){ var o = new Object(); o.name = name; o.age = age; o.job =
javascript高階程式設計學習筆記(第四章)
-基本型別和引用型別的值 ECMAScript變數可能包含兩種資料型別的值:基本型別值指簡單的資料段,引用型別值指可能由多個值構成的物件。對於5種基本型別值,可以直接操作儲存在變數中的值;而javascript不允許直接訪問物件的記憶體空間,只能通過操作物件的
Javascript高階程式設計學習筆記(7)—— 函式
前幾天有事耽擱了,今天繼續更新 今天的主要內容是JS中的函式 這一篇主要講函式的定義等內容,至於變數提升、執行環境、閉包、記憶體回收等內容在後面講,高玩們可以不用看下面的正文了。 函式 首先來講,函式對於任何程式語言都是一個十分核心的概念。 Js中的函式通過function關鍵字來宣
Javascript高階程式設計學習筆記(2)
script標籤 js在瀏覽器中的使用,肯定會涉及到script標籤。 那麼script標籤有哪些屬性呢? 1.async:非同步載入(不讓頁面等待該指令碼的載入執行,非同步載入頁面的其他部分) 2.charset:設定js的字符集編碼 3.defer:延遲指令碼(當瀏覽器解析到/html 結束標籤時才執行
《JavaScript高階程式設計》筆記:面向物件的程式設計(六)
面向物件的語言有一個標誌,那就是它們都有類的概念,而通過類可以建立任意多個具有相同屬性和方法的物件。 理解物件 建立自定義物件的最簡單的方法就是建立一個Object的例項,然後再為它新增屬性和方法。例如: var person = new Object(); person.name="N