又LAG隨性筆記
  • 關於我
  • 作品集
  • 生活隨筆
  • 與我聯絡
  • 隨手扎

隨手扎

September 15, 2021

你可能都不瞭解的JS變數祕密 - 一文了解無宣告、var、let、const變數細節

本文優先發表於ALPHAcamp

前言

這類問題我被問到不止一次。不得不說JS的變數蠻特別的。新手菜鳥會問,連老鳥也都常搞錯。

更甚者…近日更是聽到一個自稱有五年經驗的軟體工程師稱: var 宣告的變數是全域變數

暈

我知道我身邊的朋友,也有不少可能不清楚,或是沒探究這麼深入,相關文章有但不多。 於是乎…感覺我再想拖延,也應該把這篇文章寫出來。

這篇文章對於你寫更好的JS並沒有太多幫助,有許多部分平常根本不太會用到。但卻是非常基礎的概念。儘管不知道,通常按照當前常見規範,程式碼亦不會太糟糕。


這篇文章主要是從一份回覆修改而來。

變數的生存範圍

無關鍵字賦值、var宣告、let宣告最大的差別在於生存區域的不同。無關鍵字賦值 - 這意味著全域變數的宣告,當然你在全域範圍使用var/let宣告也是全域的。只是無關鍵字可能引發意外的情況,像是你預期變數應該是函數區域的:

function printG(){
  g = 1
  console.log(`printG: `, g)
}

printG() // => printG: 1
console.log(`Global G:`, g) // => Global G: 1

上例中全域情況也取得到在printG函數裏定義的全域變數。這相當於你顯式定義g於全域:

November 21, 2020

【讀書筆記】你也可以撰寫Linux核心 從嵌入式系統切入

推薦指數:★☆☆☆☆

並不是說不推薦,只是不知道通用性有多高。本書主要是針對一個硬體平臺為標的,雖然利用了大量Linux核心的抽象,應該移植不會困難。但雖然我也沒有實際操作,但本書仍然可以看到Linux核心的設計和原則,其中我也進一步了解過去不清楚的部份。僅推薦給已經有一部分概念的人閱讀。那麼一樣,紀錄一下我認為值得紀錄的部份。(雖然這次不多,因為大部分段落沒完全看懂,感受不到很深刻)

還有,這篇筆記寫得蠻亂的XXDDD

November 8, 2020

淺嘗Python3.9新特性

作為一個開發人員,最好固定一段時間就去了解一下有什麼新的東西可以使用。它可能不會馬上使用到,但是有印象會加速當需要使用時,尋找的時間。

這次,稍微看了一下Python 3.9和Python 3.10的相關改動,並玩玩紀錄一下一些我認為有點意思的部份。

現在Python的更新文件幾乎都有中文版,閱讀起來並不是那麼困難,但是有部份特性並沒有說的非常清楚,還是看一下PEP和親身使用下比較明白。(隨然還是有些注意到的特性,仍不知道是要做什麼的)。

Python 3.10編譯

為此,我直接下載Python 3.10來編譯使用,順便紀錄一下編譯過程。

./confiure --prefix=`pwd`/dist/
make
make test
make install

編譯過程還算順利,除了在test階段test_os是失敗的,並跳過了20多個測試,但不影響接者的使用。喔對,不知道哪裡下載原始碼的,可以在這個頁面找到。

Python 3.9 釋出

Python 3.9於2020年10月05日正式釋出。其中主要幾個新特性包含:

October 31, 2020

【TED筆記】為什麼你應該要定義你的恐懼而非你的目標?

TED連結:Transcript of “Why you should define your fears instead of your goals”

看完後,最近我也在嘗試使用這樣的方式分析、協助自己做決策。有時候定義目標很難,那何不嘗試試定義恐懼?

定義恐懼

斯多葛主義(Stoicism)的一種衍伸,其幫助於自己專注於自己可以控制的要件,而不去擔心不可控制的部份所產生出的恐懼。

你能控制與你不能控制(專注於前者)

未知是恐懼的。未來充滿未知、充滿恐懼,但或許是想多了?

「我們在想像中所受的苦比在現實中還多」
“We suffer more often in imagination than in reality,”
—塞內卡(Seneca)

間單說就是:

October 31, 2020

【讀書筆記】學徒模式-優秀軟體開發者的養成之路

書名:

  • 學徒模式-優秀軟體開發者的養成之路
  • Apprenticeship Patterns(原文)
  • 軟體開發者路線圖:從學徒到高手(陸譯)

讀完日期:2020/10/31
推薦指數:★★☆☆☆

這本書我是因為看到別人的書評筆記才去找來看的,其中最重要的幾點是因為有些與我想法相符,我想更了解作者還有什麼想法。這當中有許多想法或許與現在的主流思想不同(我認識一些求快而不懂原理的人),所以或許並不那麼值得推薦。但如果你是正在專研一項技術知識路上的旅人/學徒,這本絕對值得看看同為路上的人怎麼想。

October 18, 2020

【30天Lua重拾筆記】系列目錄

本系列文章為 第12屆iT邦幫忙鐵人賽 參賽文章。
你可以同時於iT邦幫忙找到本系列目錄。

最全面的Lua入門學習…筆記草稿?No, No, No, No, No 在30天要所有東西提到貌似是不太可能了,但這將會是一個由淺入深的Lua參考筆記。會竟可能涵蓋所有Lua相關核心內容。

Lua非常小,有經驗的人甚至可以在幾小時內熟悉Lua核心基礎內容、幾周內使用進階功能。並且透過輕而小的Lua,或許可以從另一角度重視其他程式語言。是C、Lisp以外,我最為推薦學習的程式語言之一。

本系列包含內容:認識Lua、基礎型別、控制流程、進階概念、範例嵌入C/Java。從頭帶你了解Lua怎麼回事。

系列目錄

  • ««
  • «
  • 1
  • 2
  • 3
  •  … 
  • 12
  • 13
  • 14
  •  … 
  • 34
  • »
  • »»
© 又LAG隨性筆記 2025