| 2019-08-13 Javascript 中的連續賦值 前言昨天在卡斯伯大大的臉書上面看了一則有趣的貼文。 雖然馬上就有人在留言下方分享答案了,不過還是想記錄一下這個有意思的問題。 正確的概念是 b = c 並且這 ...
| 2019-07-18 每天都在 Arr.map() 你知道什麼是 functor 嗎? 前言程式設計的方法論大體來說可以分為兩種, functional programming (FP) 以及 object oriented programming (OOP)。然而不同的程式語言可能也會 ...
| 2019-07-01 [nodejs] module.exports 與 exports 的差異 前言nodejs 中有許多的特性或是方便的功能我們會使用,但實際上不知道內部處理的機制。本篇要探討的是匯出模組的兩種方式 modules.exports 以及 exports 結論(TL;DR) The exports variable is available within a module’s file-level scope, and is assigned the value of module.exports before the module is evaluat ...
| 2019-06-13 JavaScript 中物件比大小的依據到底是什麼? 前言在 JavaScript 中很多比較的情況非常不符合邏輯,在今年 AIS3 (2019) pre-exam 中,有考到類似概念所引發的錯誤情形。於是記錄一下 JavaScript 在比較物件時到底是依據什麼規則。 先看幾種常見的情況12345678910> 100 > 10true> 100 > "10" //(字串與數字比較,會將字串自動轉為數字來比較)true> "100" > "10" //(兩者都是字串,實際上是按照字母順序來比較,下面的例子較明顯。並不是將兩個字 ...
| 2019-03-29 了解nodeJS中的this “This” in nodeJS以下討論 nodeJS 中的 this,與 javascript 中的 this 不同,請不要搞混了。 function 外的 thisfunction 外的 this 指向 module.exports 1console.log('outside: ', this) // {} 12module.exports.bar = 3console.log('outside: ', this) // outside: { bar: 3 } 切記 ...
| 2019-03-25 了解javesvript中的var 記錄幾個月前幫助同學遇到的一個問題,同時了解背後的原理。 12345for (var i = 0; i 5; i++) { setTimeout(() => { console.log(i) }, 0)} output: 5 5 5 5 5 很多人會認為 output 應該為 0 1 2 3 4 要記得 callback function 會被丟到 callback queue 等到 thread 有空才去執行,所以一共有 5 個 callback function ...