ECMAScript: (3/5/6/7)它是JS语言的标准,规定了JS的编程语法和基础核心知识

DOM: document object model 文档对象模型,提供给JS很多操作页面中元素的属性和方法

BOM: browser object model 浏览器对象模型 ,提供了很多操作浏览器 的属性方法,而这些方法都存放在window浏览器对象上

1.ECMAScript (ES)

=>命名规范

->只能用数字,字母,下划线起名,而且数字不能做开头
->不能使用关键字和保留字做名字(掌握常用的关键字和保留字)
->严格区分大小写
->驼峰命名法,名字有一个或多个英文(英文简写)
组成(只是建议)不是规范 方便查看
add/insert/create/append 增加/插入/创建/追加
del/remove/clear 删除/移除/清空
update/replace/修改/替换
clone/copy 克隆/复制
...

=>变量和常量

var num=12;
num=13;
num是变量 12是常量
赋值的操作其实是发变量和常量建立了连接关系
->常量就是一个具体值:就是数据类型

基本数据类型(值类型): Number,string,boolean,null,undefineg
 引用数据类型
 object: {} , [] , /^-?(\d|([1-9]\d+))(. \d+)?$/ ,new Date()....
 function:

var obj={name:"zf"}
->预解释的时候首先声明一个叫做obj的变量
->开辟一个新的内存空间(有一个16进制的地址)
->把对象的属性名和属性值储存到这个空间中
->把空间地址赋值给变量(此时变量和常量之间就建立了连接)

====================================

=>检测数据类型

Number:
NaN:not a number 不是一个数 但是属于Number类型的 typeof NaN->'Number'

isNaN([val]): 检测一个内容是否为有效数字,是的话返回false,不是返回true
NaN===NaN : false
 toFixed([number]):保留小数点多少位
 var num=Math.PI;//->圆周率:3.1415926
 num.toFixed(2) ->'3.14'

字符串string: 只要使用' 引号' 或者"双引号 "包起来的都是字符串

charAt
 charCodeAt
 substr
 substring
 slice
 indexOf
 lastIndexOf
 toUpperCase
 toLowerCase
 split
 replace
 ...

Boolean: 布尔 true/false

! 取反
 !!把一个值转换为布尔类型值<=>Boolean
 只有"0,NaN,空字符串,null,undefined"五个值代表假,其余都是真
 null/undefined: 空/未定义

数组

方法的意思/参数意思/返回值/原有数组是否改变

push ary[ary.length]=x ary.splice(ary.lenth,0,x)
 增加数组最后一项
 pop ary.length- - ary.splice(ary.length-1,1)
 删除数组最后一项
 shift
 删除数组前一项
 unshift
 增加数组前一项
 splice
 裁件拼接
 concat
 合并多个数组
 join

toString
sort
reverse
indexOf/lastIndexOf
forEach
map
...

Math: 数学函数,本身是一个对象数据类型,里面提供了很多操作数字的方法

Math.abs
 Math.ceil
 Math.floor
 Math.round
 Math.random Math.round(Math.random()*(m-n)+n)->[n-m]
 Math.max
 Math.min
 Math.pow Math.pow(10.3)->1000 十的三次幂
 Math.sprt Math.sprt(100)->10 给一百开平方
 ....
 在控制台执行:dir(Math)可以查看Math中的所有方法,自己总结其余方法的意思

检测数据类型:

typeof ->typeof null==='object' 及typeof的细节问题
 instanceof
 constructor
 Object.prototype.toString.call()

==================================

=>三个判断和三个循环

判断

if,else if,else
 swith,case
 三元运算符

循环

for
 for in
 while