js的两种书写方式:
<script></script>
<script src="xx.js"></script>
输出:
控制台输出:console.log();
页面上输出:document.write();
警告框输出:alert();
变量:var 变量名=值;
常量:const 常量名=值;
数据类型:number/string/boolean/undefined/null
算数:+ - * / %:取余,5%2 -> 1
比较/关系:> < >= <= == != === !==
赋值运算:=:赋值 += -= *= /= %=;
逻辑运算:&&:与 ||:或 !:非
while循环:
var 循环变量=n;
while(循环条件){
循环体;
循环变量变化;
}
for循环:
for(var 循环变量=n;循环条件;循环变量变化){
循环体;
}
死循环:for(;;){}
do...while循环:
var 循环变量=n;
do{
循环体;
循环变量的变化
}while(循环条件)
使用函数:
定义/创建/声明:
function 函数名(){}
var 函数名=function(形参列表){}
调用函数:
函数名();
绑定事件:
<elem onclick="函数名()"></elem>
带有形参的函数
function 函数名(形参){}
作用域:全局作用域 函数作用域
全局污染:局部可以使用全局的,但是全局不能使用局部的否则全局污染
声明提前:var声明的变量和function声明的函数集中定义在顶部,但是赋值留在原地
创建数组:
直接量:var arr=[];
构造:var arr=new Array();
DOM查找元素:
var elem=document.getElementById("id值");
var elems=document.getElementsByTagName("标签名");
var elems=document.getElementsByClassName("class名");
关系获取元素:
父元素:elem.parentNode;
子元素:elem.children;
第一个子元素:elem.firstElementChild;
最后一个子元素:elem.lastElementChild;
前一个兄弟:elem.previousElementSibling;
后一个兄弟:elem.nextElementSibling;
元素内容:
elem.innerHTML
elem.innerText
元素属性:
elem.setAttribute("属性名","属性值");
elem.属性名;
elem.属性名="属性值";
样式:内联样式 内部样式表 外部样式表
elem.style.css属性名;
elem.style.css属性名="css属性值";
绑定事件:
elem.on事件名=function(){}