[筆記] JavaScript 的基本觀念 – 9 – 函數與物件 Function and Object

物件(Object)是 JavaScript 一個很神奇的存在。Function, Array, Object 在 JavaScript 裡頭都是以 by reference 的方式存在記憶體裡頭,跟以 by value 存放在記憶體的變數有一些區別。
javascript es6 logo


課程對應章節

Course 30 ~Course 36 (全部一共有 85 Courses)

請注意:本系列文章為個人對應課程的消化吸收後,所整理出來的內容。換言之,並不一定會包含全部的課程內容,也有可能會添加其他資源來說明。課程連結網址:http://tinyurl.com/w7vrql6

內容

1. 在 JavaScript 裡頭,函數是一個物件,且可以被呼叫(invocable),可包含 Primitive(基本型別) 的東西、Object、function 的 Code,並且可以有名稱或是匿名(Anonymous)。
2. 若你使用如 let a = function greet(d){……} 的方式建立函數,那麼只有變數的部分會被 Hoist。
3. Object 是 by reference 的方式被存取,跟一般的基本型態值(如字串、數字)並不相同。
4. 基本型態值是 immutable (不可改變的),若要改變其值,需先生成新的值後再代回原本的變數中儲存,而不是直接對其操作。 可以見 MDN 上的這篇文章:Primitive


JavaScript 全攻略系列文章

  • [筆記] JavaScript 的基本觀念 – 20 – something new 新玩意
  • [筆記] JavaScript 的基本觀念 – 19 – 檢視 / 建立框架 view & build a framework
  • [筆記] JavaScript 的基本觀念 – 18 – 其他 miscellaneous
  • [筆記] JavaScript 的基本觀念 – 16 – new 和 constructor function 函數建構子
  • [筆記] JavaScript 的基本觀念 – 15 – prototype, reflection & extend
  • [筆記] JavaScript 的基本觀念 – 14 – call()、apply() 與 bind()
  • [筆記] JavaScript 的基本觀念 – 13 – Closure 閉包
  • [筆記] JavaScript 的基本觀念 – 12 – IIFE
  • [筆記] JavaScript 的基本觀念 – 11 – Array, Syntax, Semicolon
  • [筆記] JavaScript 的基本觀念 – 10 – this
  • [筆記] JavaScript 的基本觀念 – 8 – Boolean & if/else
  • [筆記] JavaScript 的基本觀念 – 17 – 內建函數建構子
  • [筆記] JavaScript 的基本觀念 – 7 – 運算子
  • [筆記] JavaScript 的基本觀念 – 6 – 型別
  • [筆記] JavaScript 的基本觀念 – 5 – Asynchronous
  • [筆記] JavaScript 的基本觀念 – 4 – Variable Environment
  • [筆記] JavaScript 的基本觀念 – 3 – Execution Stack
  • [筆記] JavaScript 的基本觀念 – 2 – undefined
  • [筆記] JavaScript 全攻略:克服 JS 的奇怪部分
  • [筆記] JavaScript 的基本觀念 – 1 – Hoisting
  • 按讚加入粉絲團

    延伸閱讀