数据类型 : number string bool symbol 四基
undefined null 两空
object 一对象

object : 函数 数组 日期等

number 数字

特殊值: 0 和 -0
无穷大 infinity + infinity - infinity
无法表示的数字:NaN

string 字符串

可以使用 (‘ ‘) (“ “) ( )
转义字符串 \
\’ 表示 ‘ \n 换行 \r回车 \t tab制表符 \u XXXX 对应的Unicode字符 \x XX 前256个Unicode字符
base64转码
window.btoa 正常转Base字符 window.atob 转原始

bool 布尔值

五个falsy值:undefined null 0 NaN ‘’
undefined 和 null区别:
没有本质区别,但如果一个变量声明了,但是没有赋值,默认是undefined
如果一个函数 没有写return 那么默认return 为 undefined
习惯上 把空值写作 undefined

Symbol

Symbol 可以创建一个独一无二的值(但并不是字符串)

变量声明:

var let const
推荐使用 “let”
const 但 const声明后不可改变赋值
let 声明: 遵循会作用域 范围不能超出{ } 不能重复声明 可以赋值 也可以不赋值 必须先声明后使用 配合for循环有奇效

类型转换

number ——- string String(数字) / n + ‘数字’ / “数字”+n
string ———— number number(“xxxx”) parselnt(“xxxx”)/parseFlaot(“xxxx”)/ (“xxxx” - 0)
x ——— bool !!x / boolean(x)
x ——— string String(x)/x.toString()