1. JS的标准:ECMAScript,简称ES。

  • ECMAScript是一个标准文档,需要浏览器厂商去实现,不同厂商有不同的实现(不同引擎)。
  • ES是标准,JS是实现。

2. JavaScript包括3部分:

  • ECMAScript 标准
  • DOM  文档对象模型 提供一组对象可以操作网页 通过JS操作网页
  • BOM  浏览器对象模型 提供一组对象可以操作浏览器 通过JS操作浏览器

3. JS语言特点:

  • 解释性语言(不用编译直接运行) 
  • 类似于C和Java的语言结构
  • 动态语言 (变量的值任意,可以保存任意类型的数据)
  • 基于原型的面向对象 (也是面向对象的语言)

4. JS基本语法:

  • JS中严格区分大小写
  • JS中每一条语句以分号结束。(不加分号浏览器会自动添加,但会消耗系统资源,也可能会加错分号,所以开发中分号必须写)
  • JS会忽略多个空格和换行,可以利用空格和换行进行格式化,规范代码

5. 概念

  • 字面量:不可改变的值(1,2,3,4,5等),可以直接使用,但一般不会直接使用。
  • 变量:可以用来保存字面量,可以任意改变。更加方便使用,开发中都是通过变量去保存一个字面量,很少使用字面量。
  • 标识符:JS中所有的可以由我们自主命名的都可以称为是标识符(变量名,函数名,属性名),需要遵循以下命名规则 (JS底层保存标识符采用的是Unicode编码,理论上所有utf-8中含有的内容都可以作为标识符)
  1. 标识符可以包含字母,数字,_ ,$
  2. 不能以数字开头
  3. 标识符不能是关键字和保留字
  4. 一般采用驼峰命名法(首字母小写,每个单词开头字母大写)

6. JS数据类型(字面量类型)一共6种(前5种是基本数据类型)

  • String 字符串 (字符串中可以使用 \ 作为转义字符,当表示一些特殊的符号时可以使用 \ 进行转义。\" 表示 ",\' 表示 ',\n表示换行,\t 表示制表符)
  • Number 数值  (所有数值都是Number类型,包括整数和浮点数。Number.MAX_VALUE表示最大值,超出这个值打印结果为Infinity,Number.MIN_VALUE表示0以上的最小值。Number.MAX_VALUE表示表示正无穷。NaN是特殊数字,表示Not a Number)
  • Boolean 布尔值
  • Null 空值
  • Undefined 未定义
  • Object 对象类型

7. 检查变量类型

  • typeof

8. 强制类型转换

  • 其他类型转String:toString()方法;String()函数  (null和undefined没有toString()方法)
  • 其他类型转Number:Number()函数  (字符串->数字:1.纯数字字符串直接转数字 2.有非数字内容转为NaN 3.若干空格转为0。null->数字0 。undefined->转为NaN.)parseInt()函数 将字符串中的有效整数去出来;parseFloat()函数 将字符串中的有效浮点数去出来
  • 其他类型转Boolean:Boolean()  0和NaN, 空串, undefined及null会转为false;非0数字,非空串和对象会转true

9. 其他进制:在js中,以0x开头表示16进制数;以0开头表示8进制数;以0b开头表示2进制数