[笔记] 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
  • 按赞加入粉丝团

    延伸阅读