1:发布时间: 2009年ES5发布 2015年ES6发布 2015年以后皆为ES6+版本 JS由DOM[每一个标签都是DOM(文档对象模型)] BOM[跳转页面,刷新页面等(浏览器对象模型)] ES[(ECMAScript)定义语法规范] 2:书写方式: 行内式:onclick="console.log()" 内嵌式: 外链式: 3:js变量及其相关 js变量:计算机存储数据的中间值 定义变量:var 变量名 定义变量,变量中的内部值为undefined(未定义) 赋值:num = 100 js中;代表这一行代码结束,可以写可不写 4:书写规范 js中关键字后必须加空格,符号两边可以加可以不加 5:命名规范 命名规范:要求见名知意,采用驼峰命名法,由字母,数字,下划线,$(英文)组成并且不能以数字开头,字母区分大小写不能是关键字或保留字. 关键字:var,let,const,if,function 保留字:现在用不到但是以后某个版本要用 JS内部的报错会阻断程序的运行 6:js基本数据类型 Number类型:小数,整数,NaN String类型:引号包裹的 undefined类型:定义变量但是未赋值 Boolean类型:真/假(true/false) null类型:空(空对象) 7:JS的数据类型检测 原因:变量的类型没有一个固定值 语法:typeof 变量名;typeof(变量名) typeof缺点:只能检测基本数据类型,检测null时返回object 8:数据类型转换为数字类型 Number方法:Number(数据) console.log(数据) 规则:字符串,纯数字会转换成数字,空字符串和空白字符串会转成0,非空字符串转NaN 布尔值:true转为1,false转为0 undefined转为NaN,null转为0 parseInt(数据) 规则:数字开头的保留数字整数部分,非数字开头的转为NaN parseFloat(数据) 规则:与parseInt类似但是不取整 个人建议方法:console.log(数据 - 0) 转字符串方法 变量.toString() console.log(num.toString()) console.log(typeof(数字).toString) 其中undefined和null不可用toString String(数据) string(100)=var str = '100' 个人建议:数据/变量名+'' 转布尔类型方法 Boolean(需要转换的数据/变量名) 除了NaN,0,'',null,undefined为false外其余皆为true 个人:!!要转的数据/变量名 9:运算符计算 诸如4 + 5这种叫表达式,在JS中每一个表达式都会得到一个结果参与周围程序 运算符中+特殊,只要表达式两边任意一方为字符串即可进行字符串拼接 除了+以外其他都会先转为数值在进行计算如NaN,0,1等 符号的运算顺序先乘除取余,在加减,有小括号先算小括号里的,JS中的中括号与大括号有特殊含义