前言 在上一張中我們介紹了使用callback function的目的與缺點,雖然可以幫助我們處理非同步問題,但缺乏順序性與可靠性,這時人們想著:能不能有一個&...
前言 在JavaScript中Callback是最基礎的也使最常用來處理非同步的方式,而callback是什麼?簡單來說就是在另一個函數完成執行之後執行就稱為c...
前言 由於JavaScript是一個單線程的程式語言,這意味著JavaScript一次只能做一件事,雖然只有一個執行緒可以簡化程式不用擔心並發與衝突的問題,但是...
前言 我們在Prototypes [上]中介紹了什麼是Prototype也介紹了JavaScript中類似Class的機制,而本章將會介紹類似繼承的機制。 (...
前言 我們在Object [上]與Object [下]中多次提到[[Prototype]],但是都沒有提到他是什麼,現在我們將在這個章節中介紹什麼是protot...
前言 在Object [上]中我們介紹了物件的宣告、型態、拷貝等等特性,接下來我們繼續介紹物件中都有哪些特性。 Property Descriptors 在ES...
前言 我們在前面幾章中介紹了this的綁定,說明了this最常被搞混的觀點也介紹了如何透過call-site與綁定的4個規則確定this所指向的物件是那一個,介...
前言 在this All Makes Sense Now! [上]中我們介紹了什麼是call-site與4種綁定的規則,我們需要做的就是觀察一個程式找到他的ca...
前言 在this Or That?中提到了許多對於this的誤解,並且也對於這些誤解做了一些解釋,我們了解到this是對每個函式調用的綁定,是基於被調用的位置而...
嗨~各位好久不見,最近幾乎都在寫一些自己喜歡的專案,不知不覺已經兩週了呢 (歡樂的時光總是過得那麼快),今天要來繼續學習啦~ 如果你也跟我一樣在大學時期物件導...
前言 this是JavaScript中最令人困惑的關鍵字之一,他會自動在每個function作用域中生成,但是this實際上是指向什麼對很多資深的JS開發人員來...
前言 在本章節中將介紹這本書最重要的程式組織之一,module,module會用到我們之前所介紹的所有觀念(lexical scope,closure...),...
前言 目前為止我們都專注在解釋辭法範圍,以及他會對程式中的變量與使用產生什麼影響,本章節會將角度轉移到closure,回顧一下Limiting Scope Ex...
今天是最後一天鐵人賽,好像沒有完賽心得就不完美了一樣,原本想說不應該在三十天時寫心得,畢竟這系列不只有這三十天~ 後來想想...最後一天不騙一下怎麼行 不是...
今天要來分享特性存取的秘密~ [[GET]] 你知道當你在存取一個物件裡面的特性時會發生什麼事情嗎? const obj ={ a: 16 } ob...
昨天分享了特性組合的一般單獨的使用方法,今天要來分享一下他們的 Combo 連技和相關用到的東西。 物件常數 (Object constant) 把 wri...
前言 目前為止我們都著重在解釋作用域與變量的工作機制,有了這些基礎後將進到下一步,首先我們要先探討不同級別的作用域來組織宣告的變量,特別是減少作用域的過度暴露。...
今天要主要來分享一下特性描述器。 特性描述器 (property descriptor) 在 ES5 之前 JS 無法讓你判定該物件特性的"特徵&q...
今天繼續分享物件~從陣列開始~Let's go~ 陣列 之前也有提過關於陣列的部分,陣列也是使用 [..] 的存取型式,但是他的組織結構不一樣的地方在於,他...
今天開始我們要一起來看看物件到底是什麼?目前我的想法是... 一包東西..裡面好像有一些功能或是資料可以用(超膚淺xDD) 物件的形式 物件有兩種形式...
前言 我們在The Scope Chain不斷地提到全域作用域,可能會疑問為什麼最外層的作用域是全域作用域?而為什麼對於JS來說會是最重要的?僅避免使用全域範圍...
今天來分享繫結的例外,除了那四個規則外還是有例外。 忽略 this 當你使用 bind、call、apply 並且傳入 null、undefined當作參數,...
前言 經由前幾篇文中應該對於全域作用域或嵌套全域作用域有一定的了解,但這僅僅只知道這麼變量是在哪一個作用域中宣告而已,若是我們在宣告這個變數之前就使用它會發生什...
前言 在What is Scope與Lexical Scope對辭法範圍做具體的定義與基本概念介紹,也了解作用域的嵌套與找尋變量的像上搜尋,在本章節中將介紹什麼...
今天主要分享的就是兩個部分,一個是明確的繫結,另一個是當有多個規則能夠套用時的優先順序。那我們開始吧 明確的繫結 ( Explicit Binding )...
接續昨天的內容讓我們繼續看下去~ 呼叫地點 昨天提到 其實就是當一個函式被調用時會有一個"啟動紀錄"被創建出來,也被叫做"執行...
這個 this 到底是什麼,對於使用 JS 的你知道 this 這關鍵字他的參考到底是什麼你知道嗎? 反正我是不知道拉如果你也不知道歡迎跟我一起學習 this...
前言 在上一章中提到了作用域的定義與規則,它主宰著JS引擎該如何在作用域或包含它的任意嵌套作用域中查詢一個變量,我們也證明了JS的scope是在編譯時決定的,而...
前言 上面兩章節簡單的介紹了一下什麼是JS與特性,而本章節開始會正式進入到JS中,而一開始我們先從作用域開始介紹,什麼是作用域?作用域就是一個變數的生存範圍,一...
今天要來分享一下一些 Module Pattern 使用閉包強大的功能。 模組 (Module Pattern) 在 JS 中可以藉由使用閉包的特性,隱藏一些...