js按照编写顺序执行
```
fsgg
```
js标识符必须以字母,美元符,下划线开始
js对大小写非常敏感,自动忽略多余的空格
单行注释// 多行注释/* */
var arr=[1,2,3,4];定义数组
var arr=new Array();arr[0]=10,arr[1]=20...动态写,没有规定大小,想写多少写多少
"10"==10 true ,"10"===10 false,===表示类型也要相同
var i=[1,2,3,4,5,6];var j;for(j in i){};可for循环i;
do while会先执行一次再去判断,while先判断再执行
break:跳出当前循环,不再进行循环;continue:跳出本次循环,进行下次循环
局部变量:申明在函数内,会自动销毁
try{...}catch(err){alert(err)} 捕获异常,弹出异常;throw :if(a==""){throw "请输入"}
鼠标经过事件onMouseOver;鼠标移出事件onMouseOut;文本内容改变事件 onChange;文本框选中事件onSelect;光标聚集事件onFocus;移开光标事件onBlur;网页加载事件onLoad;关闭网页事件onUnload
btn.onclick=function(){}会覆盖前面的(dom0级),而addEventListener("click",fun)不会覆盖(dom2级)
浏览器兼容:if(btn.addEventListener){btn.addEventListener("click",demo)}else if(btn.attachEvent){btn.attachEvent("onclick",demo)}else{btn.onclick=demo()}
event.stopPropagation()阻止事件冒泡;event.prevventDefault()阻止默认行为 如:a标签跳转
新建一个对象的另一种方式:function people(name,age){_name=name;
_age=age }
son=new people("iwen",30);
str.indexOf("world") :world是否存在,存在返回第几位,不存在返回-1
str.match("world"):是否存在,有返回world,不存在返回null;
str.replace("world","asd"),将world替换为asd并返回,不存在则返回原字符串,对原字符串不做改变
str.toUpperCase()转换为大写,str.toLowerCase()转换为小写
str.split()无任何参数将str变为一个数组长度为1,str.split("")只有两个引号将str一个字母一个字母分割成一个数组
checkTime函数,设置小于10的时间数字格式,例如5秒显示成05秒
concat() 合并数组,不改变原数组;sort() 排序,改变原数组,默认为升序,arr.sort(function(a,b){return a-b(升序)/b-a(降序)}) ;push()末尾追加元素,改变原数组;reverse()数组元素翻转,改变原数组
offsetHeight 网页高度(不包含滚动条),scrollHeight 网页高度(包含滚动条)
window对象指当前浏览器窗口,全局变量是window的属性,全局函数是window的方法
var mytime=setInterval(function(){},1000)间隔1000毫秒不停执行其中方法,clearInterval(mytime)停止
var mywin=setTimeout(function(){},3000)延迟3000毫秒执行其中方法,clearTimeout(mywin)停止