JS中内置类型
JS中分为其中内置类型,其中内置类型又分为俩大类型:基本类型和对象(Object)。
基本类型有六种: null,undefined,boolen,number,string,symbol。
JS中内置函数
数据封装类对象。抛开所有运行环境,的比如浏览器环境(有window、document等),只说js这一门单纯的语言,只说由独立宿主环境ECMAScript实现提供的对象。
Object,Array,Boolen,Number,String,Function,Date,RegExp,Error。
JS按存储方式区分变量类型
按存储方式分为值类型和引用类型。
6种内置(基本)类型是按值访问的Undefined、Null、Boolean、Number、String、Symbol。
除过上面的 6 种基本数据类型外,剩下的就是引用类型了,统称为 Object 类型。细分的话有:Object、Array 、Function、Date 、RegExp。
JS有三大对象
JavaScript有3大对象,分别是本地对象、内置对象和宿主对象。
在此引用ECMA-262(ECMAScript的制定标准)对于他们的定义:
- 本地对象
- 与宿主无关,独立于宿主环境的
ECMAScript实现提供的对象。 - 简单来说,本地对象就是
ECMA-262定义的类(引用类型)。 - 这些引用类型在运行过程中需要通过new来创建所需的实例对象。
- 包含
Object,Array,Boolen,Number,String,Function,Date,RegExp,Error等。
- 与宿主无关,独立于宿主环境的
- 内置对象
- 与宿主无关,独立于宿主环境的ECMAScript实现提供的对象。
- 在
ECMAScript程序开始执行前就存在,本身就是实例化内置对象,开发者无需再去实例化。 - 内置对象是本地对象的子集。
- 包含:Global和Math。
ECMAScript5中增添了JSON这个存在于全局的内置对象。
- 宿主对象
- 由
ECMAScript实现的宿主环境提供的对象,包含两大类,一个是宿主提供,一个是自定义类对象。 - 所有非本地对象都属于宿主对象。
- 对于嵌入到网页中的JS来说,其宿主对象就是浏览器提供的对象,浏览器对象有很多,如
Window和Document等。 - 所有的
DOM和BOM对象都属于宿主对象。
- 由
JS中使用typeof能得到的类型
typeof undefined // undefined
typeof 'abc' // sting
typeof 123 // number
typeof true // boolen
typeof {} // object
typeof [] //object
typeof null // object
typeof console.log // function
typeof可以区分出值类型的所有类型undefined、string、number、boolean,引用类型只能区分出object和function。
何时使用===何时使用==
if(obj.a === null) {
// 相当于if(obj.a === null || obj.a === undefined){}的简写形式
// 因为这里的a可能为null,可能为undefined,与null == 都能成立
// jquery源码中的推荐的写法
}
如何理解JSON
JSON是JS中的一个内置对象,和Math差不多。JSON也是一种数据格式。常用的API只有2个,JSON.stringify和JSON.parse。