跳至主要內容
前言

你好,我是悦创。

我写这本教程,主要原因是自己需要。

编程时,往往需要查阅资料,确定准确用法。理想的 JavaScript 参考书,应该简明易懂,一目了然,告诉我有哪些注意点,提供代码范例。如果涉及重要概念,还应该适当讲解。可是大多数时候,现实都不是如此。找到的资料冗长难懂,抓不住重点,有时还很陈旧,跟不上语言标准和浏览器的快速发展,且大多数是英文资料。

学习过程中,我做了很多 JavaScript 笔记。多年累积,数量相当庞大。遇到问题,我首先查自己的笔记,如果笔记里没有,再到网上查,最后回过头把笔记补全。终于有一天,我意识到可以把笔记做成书,这就是这本书的由来。


AI悦创原创...大约 2 分钟JavaScript tutorialJavaScript tutorial
3.2 比较运算符

概述

比较运算符用于比较两个值的大小,然后返回一个布尔值,表示是否满足指定的条件。

2 > 1 // true

AI悦创原创...大约 9 分钟JavaScript tutorialJavaScript tutorial
3.5 其他运算符,运算顺序

void 运算符

void运算符的作用是执行一个表达式,然后不返回任何值,或者说返回undefined

void 0 // undefined
void(0) // undefined

AI悦创原创...大约 6 分钟JavaScript tutorialJavaScript tutorial
5.3 Array 对象

构造函数

Array是 JavaScript 的原生对象,同时也是一个构造函数,可以用它生成新的数组。

var arr = new Array(2);
arr.length // 2
arr // [ empty x 2 ]

AI悦创原创...大约 19 分钟JavaScript tutorialJavaScript tutorial
5.2 属性描述对象

概述

JavaScript 提供了一个内部数据结构,用来描述对象的属性,控制它的行为,比如该属性是否可写、可遍历等等。这个内部数据结构称为“属性描述对象”(attributes object)。每个属性都有自己对应的属性描述对象,保存该属性的一些元信息。

下面是属性描述对象的一个例子。

{
  value: 123,
  writable: false,
  enumerable: true,
  configurable: false,
  get: undefined,
  set: undefined
}

AI悦创原创...大约 15 分钟JavaScript tutorialJavaScript tutorial
5.5 Boolean 对象

概述

Boolean对象是 JavaScript 的三个包装对象之一。作为构造函数,它主要用于生成布尔值的包装对象实例。

var b = new Boolean(true);

typeof b // "object"
b.valueOf() // true

AI悦创原创...大约 2 分钟JavaScript tutorialJavaScript tutorial
5.9 Date 对象

Date对象是 JavaScript 原生的时间库。它以国际标准时间(UTC)1970年1月1日00:00:00作为时间的零点,可以表示的时间范围是前后各1亿天(单位为毫秒)。

普通函数的用法

Date对象可以作为普通函数直接调用,返回一个代表当前时间的字符串。

Date()
// "Tue Dec 01 2015 09:34:43 GMT+0800 (CST)"

AI悦创原创...大约 13 分钟JavaScript tutorialJavaScript tutorial
5.11 JSON 对象

JSON 格式

JSON 格式(JavaScript Object Notation 的缩写)是一种用于数据交换的文本格式,2001年由 Douglas Crockford 提出,目的是取代繁琐笨重的 XML 格式。

相比 XML 格式,JSON 格式有两个显著的优点:书写简单,一目了然;符合 JavaScript 原生语法,可以由解释引擎直接处理,不用另外添加解析代码。所以,JSON 迅速被接受,已经成为各大网站交换数据的标准格式,并被写入标准。

每个 JSON 对象就是一个值,可能是一个数组或对象,也可能是一个原始类型的值。总之,只能是一个值,不能是两个或更多的值。


AI悦创原创...大约 9 分钟JavaScript tutorialJavaScript tutorial
5.8 Math 对象

Math是 JavaScript 的原生对象,提供各种数学功能。该对象不是构造函数,不能生成实例,所有的属性和方法都必须在Math对象上调用。

静态属性

Math对象的静态属性,提供以下一些数学常数。

  • Math.E:常数e
  • Math.LN2:2 的自然对数。
  • Math.LN10:10 的自然对数。
  • Math.LOG2E:以 2 为底的e的对数。
  • Math.LOG10E:以 10 为底的e的对数。
  • Math.PI:常数π
  • Math.SQRT1_2:0.5 的平方根。
  • Math.SQRT2:2 的平方根。

AI悦创原创...大约 4 分钟JavaScript tutorialJavaScript tutorial
2
3
4
5
...
10