March 2008, first version
The first version.
March 2012, Second Edition:
More than 70 mistakes found after the revision and release of the first version, of which more than 50 are mainly word and typographical errors.
Rebuild the plate to avoid the loss of the broken number caused by printing.
The contents are refined to level 4 titles to fully display the content and structure of the book.
Add this appendix to maintain multiple versions of this book.
Remove most of the content about qomo from the third section "programming practices" (these content can already be obtained through the open documentation of this project) and start to talk about qobean:
Modify: Chapter 1 metalanguage: core technology and implementation of qobean.
The following content is added for ecmascript 5th:
Add: 2.5.1.3 use Attribute reader in the Direct Volume of Objects
Add: 2.6 syntax in strict Mode
Modify: 3.3.7.4 prototype chain maintenance in spidermonkey and es5
Join: 3.5 customizable Object Attributes
Addition: 4.7 strict mode and Closure
Added: 5.3.5 compatibility: Call () and apply () in es5 ()
Add: 5.3.6 BIND () method and function call Delay
The following are some other changes:
added: 1.4 language evolution
rewrite: 1.5.3 spidermonkey Javascript
Rewriting: 2.2 JavaScript Syntax: Variable Declaration
rewrite: Objects in Javascript 3.4.5 (constructor)
updated: Objects in 3.4.5 JavaScript (constructor), which are updated in large quantities in Figure 3-15.
rewrite: The identifier (variable) exception in the closure 4.6.3.4
rewrite: 5.4.4 host rewrite restrictions
use "basic type" as the unified term for typeof return type names; clarified the use environment of "basic type" and "meta type.
ECMA script is no longer called ECMA script.
Appendix C deletes engine and language extensions, these contents will be published in the form of blog topics in the future.
the three figures in Appendix C are not updated in this version.