JavaScript日常总结20200530

203 阅读2分钟

JS中内置类型

JS中分为其中内置类型,其中内置类型又分为俩大类型:基本类型对象(Object)
基本类型有六种: null,undefined,boolen,number,string,symbol

JS中内置函数

数据封装类对象。抛开所有运行环境,的比如浏览器环境(有windowdocument等),只说js这一门单纯的语言,只说由独立宿主环境ECMAScript实现提供的对象。 Object,Array,Boolen,Number,String,Function,Date,RegExp,Error

JS按存储方式区分变量类型

按存储方式分为值类型引用类型。 6种内置(基本)类型是按值访问的UndefinedNullBooleanNumberStringSymbol
除过上面的 6 种基本数据类型外,剩下的就是引用类型了,统称为 Object 类型。细分的话有:ObjectArrayFunctionDateRegExp

JS有三大对象

JavaScript有3大对象,分别是本地对象内置对象宿主对象。 在此引用ECMA-262ECMAScript的制定标准)对于他们的定义:

  • 本地对象
    • 与宿主无关,独立于宿主环境的ECMAScript实现提供的对象。
    • 简单来说,本地对象就是 ECMA-262 定义的类(引用类型)。
    • 这些引用类型在运行过程中需要通过new来创建所需的实例对象。
    • 包含Object,Array,Boolen,Number,String,Function,Date,RegExp,Error等。
  • 内置对象
    • 与宿主无关,独立于宿主环境的ECMAScript实现提供的对象。
    • ECMAScript程序开始执行前就存在,本身就是实例化内置对象,开发者无需再去实例化
    • 内置对象是本地对象的子集。
    • 包含:Global和Math。
    • ECMAScript5中增添了JSON这个存在于全局的内置对象。
  • 宿主对象
    • ECMAScript实现的宿主环境提供的对象,包含两大类,一个是宿主提供,一个是自定义类对象。
    • 所有非本地对象都属于宿主对象。
    • 对于嵌入到网页中的JS来说,其宿主对象就是浏览器提供的对象,浏览器对象有很多,如WindowDocument等。
    • 所有的DOMBOM对象都属于宿主对象。

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可以区分出值类型的所有类型undefinedstringnumberboolean,引用类型只能区分出objectfunction

何时使用===何时使用==

if(obj.a === null) {
// 相当于if(obj.a === null || obj.a === undefined){}的简写形式
// 因为这里的a可能为null,可能为undefined,与null == 都能成立
// jquery源码中的推荐的写法
}

如何理解JSON

JSON是JS中的一个内置对象,和Math差不多。JSON也是一种数据格式。常用的API只有2个,JSON.stringifyJSON.parse