变量类型和计算
1. typeof能判断哪些类型
//typeof 能判断所有的值类型
let a; console.log(typeof a) // undefined
const a = 'string' console.log(typeof a) // string
const a = 1 console.log(typeof a) // number
const a = true console.log(typeof a) // boolean
const a = Symbol('a') console.log(typeof a) // Symbol
2. 何时使用=== 何时使用==
1、=== :称为等同符,当两边值的类型相同时,直接比较值,若类型不相同,直接返回false;
2、== :称为等值符,当等号两边的类型相同时,直接比较值是否相等,若不相同,则先转化为类型相同的值,再进行比较;
类型转换规则:
1)如果等号两边是boolean、string、number三者中任意两者进行比较时,优先转换为数字进行比较。
2)如果等号两边出现了null或undefined,null和undefined除了和自己相等,就彼此相等
注意:NaN==NaN //返回false,NaN和所有值包括自己都不相等。
3. 值类型和引用类型的区别
//值类型
let a = 100
let b = a
a = 200
console.log(b)//100
//引用类型
let a = {age:20}
let b= a
b.age= 21
console.log(a.age)//21
4.字符串拼接
a.使用加号运算符连接两个字符串。
b.使用字符串 concat() 方法可以把多个参数添加到指定字符串的尾部。该方法的参数类型和个数没有限制,它会把所有参数都转换为字符串,然后按顺序连接到当前字符串的尾部最后返回连接后的字符串