[笔记] JavaScript 的基本观念 – 16 – new 和 constructor function 函数建构子

章节连结

虽说在 JavaScript 并没有像 class 这样的结构,但这样的设计跟当初为了吸引 Java的使用者有关,所以采用类似的写法。在实际运行时,JavaScript 是先透过一个函式建构子constructor function 来建立一个物件,并指向一个特定的内存位置,然后 invoke 函式内的内容,来新增其物件的key-value对内容。javascript es6 logo


课程对应章节

Course 57 ~ Course 59 (全部一共有 85 Courses)

请注意:本系列文章为个人对应课程的消化吸收后,所整理出来的内容。换言之,并不一定会包含全部的课程内容,也有可能会添加其他资源来说明。课程连结网址:http://tinyurl.com/w7vrql6

内容

1. 在 constructor function 中,若没有指定回传值,那么运用 new 时,就会自动回传所建立的物件,并不需要特别指定。
2. 承上,若你指定回传的东西,那么原先建立的内容会被全部覆蓋。
3. 若你忘记使用 new,那么你实际呼叫时,会得到任何新增变量的默认值 “undefined”。
4. 函式中的 prototype,默认是一个空物件,你可以使用 .prototype 来新增方法、key-value 对到函式中。
5. 为了减少内存的使用量,当你要新增一个共用的方法时,你可以加入到 .protype 中让新建立的物件自然都带有此方法。如此一来,便可减少内存用量。


JavaScript 全攻略系列文章

  • [笔记] JavaScript 的基本观念 – 20 – something new 新玩意
  • [笔记] JavaScript 的基本观念 – 19 – 检视 / 建立框架 view & build a framework
  • [笔记] JavaScript 的基本观念 – 18 – 其他 miscellaneous
  • [笔记] 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 的基本观念 – 9 – 函数与物件 Function and Object
  • [笔记] 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

  • 按赞加入粉丝团

    延伸阅读