JS for impatient programmers > 印刷版:ES2019 >

“JavaScript for impatient programmers” 中的外部链接

1. 关于本书(ES2019 版)

  1. https://exploring.javascript.ac.cn/
  2. https://exploring.javascript.ac.cn/impatient-js/
  3. https://exploring.javascript.ac.cn/impatient-js/#buy
  4. http://francaye.net
  5. http://www.serendipity23editorial.com
  6. https://twitter.com/awbjs
  7. https://twitter.com/bmeurer
  8. https://twitter.com/bterlson
  9. https://twitter.com/littledan
  10. https://twitter.com/ljharb
  11. https://twitter.com/mathias
  12. https://twitter.com/MylesBorins
  13. https://twitter.com/robpalmer2
  14. https://twitter.com/simevidas
  15. https://twitter.com/jowe

2. 常见问题解答:书籍和补充材料

  1. https://exploring.javascript.ac.cn/impatient-js/downloads/complete-toc.html
  2. https://exploring.javascript.ac.cn/impatient-js/#upgrades
  3. https://exploring.javascript.ac.cn/impatient-js/es2019/
  4. https://exploring.javascript.ac.cn/impatient-js/es2019/
  5. https://exploring.javascript.ac.cn/impatient-js/es2019/
  6. https://2ality.com/2018/04/type-notation-typescript.html

3. 为什么选择 JavaScript?(额外内容)

  1. https://github.com/tc39/proposal-javascript-standard-library
  2. https://npmjs.net.cn
  3. https://developers.google.com/web/progressive-web-apps/
  4. https://electron.js.cn
  5. https://facebook.github.io/react-native/
  6. https://node.org.cn/
  7. https://npmjs.net.cn
  8. https://babeljs.node.org.cn
  9. https://typescript.net.cn
  10. https://flow.node.org.cn

4. JavaScript 的本质(额外内容)

  1. https://github.com/tc39/proposal-binary-ast
  2. https://typescript.net.cn
  3. https://flow.node.org.cn
  4. https://eslint.org.cn
  5. https://prettier.io

5. JavaScript 的历史和演变

  1. https://github.com/tc39/tc39-notes/
  2. https://github.com/tc39/proposals
  3. https://github.com/tc39/proposals/blob/master/finished-proposals.md

6. 常见问题解答:JavaScript

  1. http://kangax.github.io/compat-table/es5/
  2. https://twitter.com/kangax
  3. https://twitter.com/webbedspace
  4. https://twitter.com/zloirock
  5. https://node.green
  6. https://twitter.com/williamkapke
  7. https://mdn.org.cn/zh-CN/docs/Web/JavaScript
  8. https://caniuse.cn/

7. 总览

  1. https://mdn.org.cn/zh-CN/
  2. https://node.org.cn/zh-cn/docs/
  3. https://exploring.javascript.ac.cn
  4. http://speakingjs.com/
  5. https://exploring.javascript.ac.cn/es6.html
  6. https://exploring.javascript.ac.cn/es2016-es2017.html

8. 语法

  1. https://prettier.io
  2. https://eslint.org.cn
  3. https://eslint.org.cn/docs/rules/semi
  4. https://mdn.org.cn/zh-CN/docs/Web/JavaScript/Reference/Strict_mode

9. 控制台:交互式 JavaScript 命令行

  1. https://developer.apple.com/safari/tools/
  2. https://developers.google.com/web/tools/chrome-devtools/console/
  3. https://docs.microsoft.com/zh-cn/microsoft-edge/devtools-guide/console
  4. https://mdn.org.cn/zh-CN/docs/Tools/Web_Console/Opening_the_Web_Console
  5. https://babeljs.node.org.cn/repl
  6. https://mdn.org.cn/zh-CN/docs/Web/API/console
  7. https://node.org.cn/api/console.html

10. 断言 API

  1. https://node.org.cn/api/assert.html#assert_strict_mode
  2. https://node.org.cn/api/assert.html

11. 开始测验和练习

  1. https://github.com/avajs/ava

12. 变量和赋值

  1. http://speakingjs.com/es5/ch16.html
  2. https://2ality.com/2019/08/global-this.html#window-proxy
  3. https://exploring.javascript.ac.cn/es6/ch_classes.html#_private-data-via-constructor-environments

13. 值

  1. https://zh.wikipedia.org/wiki/求值策略#按共享调用

14. 运算符

  1. https://tc39.github.io/ecma262/#sec-abstract-equality-comparison
  2. http://speakingjs.com/es5/ch09.html#comma_operator
  3. http://speakingjs.com/es5/ch09.html#void_operator

15. 非值 `undefined` 和 `null`

  1. https://tc39.github.io/ecma262/#sec-null-value
  2. https://zh.wikipedia.org/wiki/Option_type

17. 数字

  1. https://2ality.com/2019/08/remainder-vs-modulo.html
  2. https://docs.oracle.com/javase/8/docs/api/java/math/BigDecimal.html
  3. https://docs.pythonlang.cn/3/library/decimal.html
  4. https://github.com/tc39/proposals/blob/master/stage-0-proposals.md

18. `Math`

  1. https://github.com/Microsoft/TypeScript/blob/master/lib/
  2. https://mdn.org.cn/zh-CN/docs/Web/JavaScript
  3. https://tc39.github.io/ecma262/

19. Unicode 简介(高级)

  1. https://html.whatwg.com.cn/multipage/webappapis.html#fetch-a-single-module-script
  2. https://unicode.org/reports/tr29/#Grapheme_Cluster_Boundaries
  3. https://manishearth.github.io/blog/2017/01/14/stop-ascribing-meaning-to-unicode-code-points/

20. 字符串

  1. https://mdn.org.cn/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Intl
  2. https://github.com/tc39/proposal-intl-segmenter
  3. https://unicode.org/reports/tr15/
  4. https://github.com/Microsoft/TypeScript/blob/master/lib/
  5. https://mdn.org.cn/zh-CN/docs/Web/JavaScript
  6. https://tc39.github.io/ecma262/

21. 使用模板字面量和标签模板

  1. https://handlebars.node.org.cn
  2. https://github.com/Polymer/lit-html
  3. https://www.polymer-project.org/
  4. https://github.com/rauschma/re-template-tag
  5. https://github.com/apollographql/graphql-tag
  6. https://github.com/dmnd/dedent

23. 控制流语句

  1. https://mdn.org.cn/zh-CN/docs/Web/API/Window/prompt

24. 异常处理

  1. https://tc39.github.io/ecma262/#sec-native-error-types-used-in-this-standard

25. 可调用值

  1. https://mdn.org.cn/zh-CN/docs/Web/HTTP/CSP

27. 模块

  1. https://requirejs.node.org.cn
  2. https://semver.org
  3. https://docs.npmjs.net.cn/files/package.json
  4. https://docs.npmjs.net.cn/files/package.json#name
  5. https://node.org.cn/api/esm.html
  6. https://github.com/tc39/proposal-import-meta
  7. https://node.org.cn/api/url.html#url_class_url
  8. https://node.org.cn/api/fs.html#fs_fs_promises_api
  9. https://node.org.cn/api/url.html
  10. https://remysharp.com/2010/10/08/what-is-a-polyfill
  11. https://remysharp.com/2010/10/08/what-is-a-polyfill
  12. https://zh.wikipedia.org/wiki/巴黎拉斯维加斯
  13. https://www.w3.org/2001/tag/doc/polyfills/

28. 单例对象

  1. https://eslint.org.cn/docs/rules/no-invalid-this
  2. https://tc39.github.io/ecma262/#sec-ordinaryownpropertykeys
  3. https://underscorejs.node.org.cn
  4. https://underscorejs.node.org.cn/#pick
  5. https://underscorejs.node.org.cn/#invert
  6. https://github.com/es-shims/Object.fromEntries
  7. http://speakingjs.com/es5/ch17.html#property_attributes

29. 原型链和类

  1. https://github.com/tc39/proposal-class-fields
  2. https://exploring.javascript.ac.cn/es6/ch_classes.html#sec_private-data-for-classes

31. 数组(`Array`)

  1. https://tc39.github.io/ecma262/#integer-index
  2. https://mdn.org.cn/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Intl
  3. https://github.com/Microsoft/TypeScript/blob/master/lib/
  4. https://mdn.org.cn/zh-CN/docs/Web/JavaScript
  5. https://tc39.github.io/ecma262/

32. 类型化数组:处理二进制数据(高级)

  1. https://www.khronos.org/registry/typedarray/specs/1.0/
  2. http://www.html5rocks.com/zh/tutorials/webgl/typed_arrays/#toc-history
  3. http://www.html5rocks.com/zh/tutorials/webgl/typed_arrays/#toc-history
  4. https://zh.wikipedia.org/wiki/字节序

33. Map(`Map`)

  1. http://www.ecma-international.org/ecma-262/6.0/#sec-samevaluezero
  2. https://github.com/Microsoft/TypeScript/blob/master/lib/

34. WeakMap(`WeakMap`)

  1. https://github.com/tc39/tc39-notes/blob/master/meetings/2014-11/nov-19.md#412-should-weakmapweakset-have-a-clear-method-markm

36. WeakSet(`WeakSet`)

  1. https://mail.mozilla.org/pipermail/es-discuss/2015-June/043027.html

38. 同步生成器(高级)

  1. https://node.org.cn/zh-cn/docs/
  2. https://exploring.javascript.ac.cn/es6/ch_generators.html

39. JavaScript 中的异步编程

  1. http://rauschma.github.io/async-examples/blocking.html
  2. https://mdn.org.cn/zh-CN/docs/Web/API/Web_Workers_API
  3. https://vimeo.com/96425312
  4. https://www.w3.org/TR/html5/webappapis.html#event-loops

40. 用于异步编程的 Promise

  1. https://fetch.spec.whatwg.org/#fetch-api
  2. http://blog.izs.me/post/59142742143/designing-apis-for-asynchrony
  3. https://exploring.javascript.ac.cn/es6/ch_promises.html#_timing-out-via-promiserace
  4. https://exploring.javascript.ac.cn/es6/ch_promises.html#sec_demo-promise

43. 正则表达式(`RegExp`)

  1. http://www.unicode.org/versions/Unicode9.0.0/ch03.pdf
  2. https://unicode.org/reports/tr44/#Properties

44. 日期(`Date`)

  1. https://moment.node.org.cn
  2. https://github.com/iamkun/dayjs
  3. https://moment.github.io/luxon/
  4. https://js-joda.github.io/js-joda/
  5. https://github.com/date-fns/date-fns
  6. https://inventi.studio/zh-cn/blog/why-you-shouldnt-use-moment-js
  7. https://github.com/maggiepint/proposal-temporal
  8. https://www.timeanddate.com/time/gmt-utc-time.html
  9. https://www.timeanddate.com/time/zones/z
  10. https://mdn.org.cn/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Intl

45. 创建和解析 JSON(`JSON`)

  1. http://json.org/
  2. https://www.ecma-international.org/publications/standards/Ecma-404.htm
  3. https://web.archive.org/web/20190308024153/https://plus.google.com/+DouglasCrockfordEsq/posts/RK8qyGVaGSr

46. 下一步:Web 开发概述(额外内容)

  1. https://developers.google.com/web/progressive-web-apps/checklist
  2. https://mdn.org.cn/zh-CN/docs/Learn
  3. https://webassembly.net.cn
  4. https://arxiv.org/abs/1901.09056
  5. https://github.com/WebAssembly/WASI
  6. http://lisperator.net/uglifyjs/
  7. https://github.com/babel/minify
  8. https://github.com/terser-js/terser
  9. https://developers.google.com/closure/compiler/
  10. https://medium.com/@asyncmax/the-right-way-to-bundle-your-assets-for-faster-sites-over-http-2-437c37efe3ff
  11. https://yarn.npmjs.net.cn/zh-Hans/
  12. https://github.com/pnpm/pnpm
  13. https://github.com/facebook/immutable-js/
  14. https://github.com/mweststrate/immer
  15. https://mdn.org.cn/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Intl
  16. https://graphql.net.cn/