1. JS三个主要部分
ECMAScript(核心) DOM(文档对象模型)BOM(浏览器对象模型)
2.ECMAScript
最新版IE9+完全兼容,第三版兼容性最好
标识符(起名规范)
1.第一个字符必须是字母下划线美元 (“$$$$完全ok”)
2.其他字符:字母数字下划线美元
关键字和保留字
不能用这些起名字哦
break、case、catch、continue、default、delete、do、else、finally、for、function、if、in、instanceof、new、return、switch、this、throw、try、typeof、var、void、while、with
abstract、Boolean、byte、char、class、const、debugger、double、enum、export、extends、final、float、goto、implements、import、int、interface、long、native、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile
数据类型
Number Boolean Null Undefined String Object(es6新增Symbol表示独一无二的值)
检测变量的数据类型:typeof()
检测对象的类型:instanceof()
Number:(8进制0开头 16进制0x开头)
数值范围:Number.MIN_VALUE——Number.MAX_VALUE
超出:InFinity—— -InFinity (要想确定一个数是不是超了用 isFinite()函数判断)‘
NAN:NAN与任何数都不相等
判断不是数值或者不能被转化成数值(isNaN())
NaN==NaN //false
isNaN(NaN) //true
isNaN(“10”) //false 此字符串可以被转化为数字
isNaN(“blue”)//true
isNaN(true) //false
0/0 的值是NaN
数值转化函数:Number() parseInt()(转化为整数) parseFloat()(转化为小数)
Number("")//0
Number(“Undefined”)//NaN
parseInt(“1234blue”)//1234
parseInt("")//NaN
parseInt(“AF”,16)//175,parseFloat()只解析10进制
Boolean:(只有小写的true false才合法)
true:任何非空字符串,任何非0的数,任何对象
false:"",0.NAN,null,undefined
Null :空对象指针
alert(typeof null);//object
alert(null===undefined);//true
Undefined:定义但未初始化
String :(转义字符为1个字符:\u03a3)
转化为字符串:
toString(括号里为基数,可选2进制,8进制等)不适用于Undefined和null
String()适用于所有类型
Object:放在后面写吧太重要了
相等:==和全等 :===的区别(全等是未经转化的绝对相等)