JavaScript介绍:
JavaScript ( JS ) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web 页面的脚本语言而出名的,但是它也被用到了很多非浏览器环境中,例如 Node.js、 Apache CouchDB 和 Adobe Acrobat。JavaScript 是一种基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。 JavaScript 的标准是 ECMAScript 。截至 2012 年,所有的现代浏览器都完整的支持 ECMAScript 5.1,旧版本的浏览器至少支持 ECMAScript 3 标准。2015年6月17日,ECMA国际组织发布了 ECMAScript 的第六版,该版本正式名称为 ECMAScript 2015,但通常被称为 ECMAScript 6 或者 ES6。 ----MDN
数据类型:
最新的ECMAScript标准定义了8种数据类型,其中包括7种原始类型和Object数据类型;
-
Object:表示复杂的数据类型,任何 constructed 对象实例的特殊非数据结构类型,也用做数据结构:new Object,new Array,new Map,new Set,new WeakMap,new WeakSet,new Date,和几乎所有通过 new keyword 创建的东西。
typeof instance === "object"
-
Undefined:用于表示未定义的值,只有一个undefined值得独立数据类型;
typeof instance === "undefined"
-
Number:数字类型,表示整数或者浮点数,范围在在±2的53次方之间;
typeof instance === "number"
-
Null:表示空值,只有一个null值的数据类型;
typeof instance === "object"
-
Bigint(es6):用于表示任意长度的整数,不受number数据类型大小范围的限制;
typeof instance === "bigint"
-
Boolean:布尔类型,有两个值true和false;
typeof instance === "boolean"
-
String:字符串类型,可以包含一个或多个字符;
typeof instance === "string”
-
Symbol(es6):用于唯一的标识符;
typeof instance === "symbol" 记忆:OUNNBBSS(欧牛逼死)
JavaScript数据类型的分类:
1:基本类型,变量是存放在栈(Stack)内存里的 undefined、null、number、symbol、string、boolean、bigint
2:引用类型,变量是保存在堆(Heap)内存中的 Object、Array、RegExp、Date、Function
null和undefined区别:
- 转换成number时,null转换为0,undefined转换成NaN
- 使用typeof关键字时,null返回“object”,undefined返回“undefined”
- null==undefined返回true
- null===undefined返回false