1-1可视区域 屏幕信息
var screenWidth =window.screen.availWidth; //获取可视区域的width var viewwidth=document.body.clientWidth; console.log(screenWidth) console.log(viewwidth)
1-2 内联事件 自定义属性名
<button id="btn" data-aid="123456" onclick="go(event)">btn</button> <script> function go(event){ console.log("hello world"); console.log(event.target.dataset.aid) } </script>
1-3
<!-- firstChild 获取第一个子节点 firstElementChild 获取第一个元素子节点 lastChild lastElementChild --> <!-- nextSibling nextElementSibling previousSibling previousElementSibling --> <div>hello</div> <ul id="app"> <li>html</li> <li>css</li> </ul> <div> world </div> <script> var app=document.getElementById("app"); console.log(app.nextElementSibling) </script>
1-4 classlist
<!-- add(); addclass(); --> <!-- remove(); removeclass(); --> <p id="app">hello world</p> <button id="btn">移除class</button> <script> var app=document.getElementById("app"); var btn=document.getElementById("btn"); app.onclick=function(){ this.classList.add("current") } btn.onclick=function(){ app.classList.remove("current") } </script>
1-5
<!-- toggle toggleclass(); contains hasclass() 判断是否包含某个class --> <p id="app">hello world</p> <script> var app=document.getElementById("app"); app.onclick=function(){ if(this.classList.contains("current")){ this.classList.remove("current") }else{ this.classList.add("current") } // this.classList.toggle("current") } </script>
1-6 函数
function go(a){ console.log(a) } go(10,12);
1-7 argument
function go(a){ console.log(arguments) console.log(a); } go(10,12);
1-8 重载
function go(a){ console.log(a); } function go(a,b){ console.log(a+b); } go(10); go(10,20)
1-9
function go(){ if(arguments.length==1){ console.log(arguments[0])//10 }else if(arguments.length==2){ console.log(arguments[0]+arguments[1])//30 } } go(10) go(10,20)
1-10 函数的返回值
function go(){ return "hello world"; console.log("good") } console.log(go())//hello world
1-11 对象的方法
var obj ={ name:"meng", sayName:function(){ console.log(this.name);//meng } } obj.sayName();
1-12 todolist
<input type="text" id="input"> <ul id="app"> </ul> <script> // indexOf 判断数组下标 值为-1 不存在 //var arr=["html","css"]; //console.log(arr.indexOf("js")) -1 var arr=[]; var input=document.getElementById("input"); var app=document.getElementById("app"); input.onkeydown=function(event){ if(event.keyCode==13){ if(arr.indexOf(this.value)==-1 && this.value!="") arr.push(this.value); var li=document.createElement("li") li.innerHTML=this.value; app.append(li); } console.log(arr);//["tui ", "you", "he"] 输入空值及重复值不显示 } </script>
1-13 data
var obj=[ {name:"cheng",age:18,skill:"html"}, {name:"meng",age:21,skill:"css"}, {name:"sheng",age:17,skill:"js"}, ] var arr=[]; for(var i=0;i<=obj.length;i++){ var name = obj[i].name; var skill =obj[i].skill; arr.push({ name:name, skill:skill }) } console.log(arr);
1-19 解构
var obj={ name:"li",age:18,skill:"vue",s:{ sex:"male" } }; // var name=obj.name; // var age=obj.age; // var skill=obj.skill; var {name,s}=obj; console.log(name) console.log(s.sex)
1-20 tab
style .current{ color:red;}<ul> <li class="current">html</li> <li>css</li> </ul> <div class="parent"> <div class="html">html</div> <div class="css">css</div> </div> <script> var lis=document.getElementsByTagName("li"); var divs=document.querySelectorAll(".parent div"); for(let i=0;i<lis.length;i++){ lis[i].index=i; lis[i].onclick=function(){ //遍历让所有的li移除class="current" for(let i=0;i<lis.length;i++){ lis[i].classList.remove("current"); } //让当前元素添加class="current" this.classList.add("current") console.log(this.index) /* 3.让所有的div隐藏 */ for(let i=0;i<divs.length;i++){ divs[i].style.display = "none" } /* 4.让对应的下标的div去显示 */ divs[this.index].style.display = "block"; } } </script>