潭州课堂25班:Ph201805201 WEB 之 JS 第五课 (课堂笔记)

算数运算符

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body> <script>
//算数运算符:+,-,*,/,%,++,--
// 数和数的运算
var nnu1 = 5;
var nnu2 = 2;
// console.log(nnu1 + nnu2); //7
// console.log(nnu1 - nnu2);//3
// console.log(nnu1 * nnu2);//10
// console.log(nnu1 / nnu2);//2.5
// console.log(nnu1 % nnu2);//1 //数和字符运行
str = '2';
// console.log(nnu1 + str); //52 这里的 + 号为字符串拼接
// console.log(nnu1 - str);//3
// console.log(nnu1 * str);//10
// console.log(nnu1 / str);//2.5
// console.log(nnu1 % str);//1 //数和其他数据类型的运算
// console.log(nnu1 + true); //6 true 是 1
// console.log(nnu1 - false);//5 false 是0
// console.log(nnu1 + null);//5 unll 空 也是0
// console.log(nnu1 - undefined);//null 和未定义运行 都得 null // 自增 ++ ,自减--
var num3 = 5;
// console.log(num3++);//5 先返回 num3 的值 再开始运算,所以这里的值是 num3 未自增前的值
// console.log(num3--);//6 先返回 num3 的值 再开始运算,所以这里的值是 num3 未自假前的值 // console.log(++num3);//6 自增后返回值
// console.log(--num3);//5 自减后返回值 </script>
</body>
</html>

  

赋值运算符

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
//赋值运算符 =,+=,-=,*=,/=
var a = 5; //5赋值给 a
console.log(a)
a += 1; // a = a+1
console.log(a);
a -= 2; //a = a-2
console.log(a);
a *= 2; // a = a*2
console.log(a);
a /= 4; // a = a/4 </script>
</body>
</html>

  

逻辑运算符

潭州课堂25班:Ph201805201 WEB 之 JS 第五课 (课堂笔记)

逻辑运算符

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// 逻辑运算符 && (与) ||(或) !(非)
console.log(10 && 0 &&5);//0 与可以认为乘法运算 有0得0
console.log(10&& undefined &&5);// undefined 假 console.log(10 || 0 ||5)// 或 可以认为是加法运算 全0得0 console.log(!false);// 取反
console.log(!0);// 取反
</script>
</body>
</html>

  

比较运算符

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// 比较运算符 <>= =< => != == ===
var num = 5;
var str = '5';
if (num === str){ // === == 的用法
console.log('数据类型和值都相等')
}else if(num == str){
console.log('只要值相等')
}else {
console.log('都不相等')
}
</script>
</body>
</html>

  

控制流程:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
var name = '小白';
if(name === '小白'){
console.log(name+'小狗')
}else {
console.log(name+'蜡笔小新')
} //可能写成三目运算:
name === '小白'? console.log(name+'小狗'): console.log(name+'蜡笔小新');
// 条件 如果成立 就 不成立 就 // 多层
var num = 5;
var str = '5';
if (num === str){ // === == 的用法
console.log('数据类型和值都相等')
}else if(num == str){
console.log('只要值相等')
}else {
console.log('都不相等')
} //switch
switch (name){
case '小白':
console.log('是小狗');
break
case '蜡笔小新':
console.log('是小孩');
break
default:
console.log('没一个配的上,就走这边')
}
</script>
</body>
</html>

  

循环与鼠标点击事件

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
ul{
list-style: none; //去点
}
li{
height: 20px;
width: 60px;
background: skyblue;
float: left;
margin-left: 20px;
text-align: center; /*水平剧中*/
cursor: pointer; /* 小手*/
}
</style>
</head>
<body>
<ul>
<li>地衣章</li>
<li>地饿章</li>
<li>地山章</li>
<li>地事章</li>
</ul> <script>
var btn = document.getElementsByTagName('li'); //用 let 换 var 使得 i 有函数作用域
// for(let i=0; i<btn.length; i++){
// // console.log(i)
// btn[i].onclick=function () {
// console.log(i)
// }
// } // 用 var 实现
for(var i=0; i<btn.length; i++){
// console.log(i);
btn[i].nu = i ; // 给没个 li 添加属性
btn[i].onclick=function () {
console.log(this.nu) //this.nu = btn[i]
}
}
</script> </body>
</html>

  

while do while

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// for( var i=0; i<10; i++ ){
// console.log(i)
// } // for 循环流程
// var i=0;
// for(;i<10;){
// console.log(i);
// i++;
// } // while 循环流程
// var i=0;
// while (i<10){
// console.log(i);
// i++;
// } // do while
var i=0;
do{
console.log(i);
i++;
} while (i<10); </script>
</body>
</html>

  

字符串方法

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
var str = 'a b c'; // length 方法 寡不敌众串长度
console.log(str.length); //5 // 下标
// console.log(str[0]); //a // indexOf
// console.log(str.indexOf('a')) ; // 获取下标 第一个 a 的下标
// console.log(str.indexOf('a',0)) ; // 获取下标 从第 0 个 a 的下标
// console.log(str.indexOf('a',)) ; // 如果没有,返回 -1 //split 切割
console.log(str.split('')); //["a", " ", "b", " ", "c"] // 切片 包前不包后,
// console.log(str.substring(0,3)); //a b 如果有 -数,将视为0
// console.log(str.substring(3,0)); //a b 如果有 -数,将视为0
// console.log(str.substring(2)); //b c 从2 到最末尾 // console.log(str.slice(0,3)); //a b 如果有 -数,将视为0
// console.log(str.slice(0,-1)); // -数,从右往前数,
// console.log(str.slice(2)); //b c 从2 到最末尾
console.log(str.slice(-2)); //c 从2 到最末尾
</script>
</body>
</html>

  

数组方法

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
var a = [1,2,3,4,5,6];
// var b = new Array(); //length
// console.log(a.length); //下标
// console.log(a[2]); //赋值
a[2] = 'aaa';
// console.log(a); //后加
// a.push('bb'); //前加
// a.unshift('cc'); //删除 后
// a.pop('bb'); ////删除 前
// a.shift('cc'); ////删除 指定
var x = ['a','b','c','d','e'];
// console.log(x.splice(2)); //["c", "d", "e"] 这些被删除
// console.log(x); //["a", "b"] // console.log(x.splice(1,2)); //["b", "c"] 从1到2 被删
// console.log(x); //["a", "d", "e"] // console.log(x.splice(1,2,'ppp','qqq')); //["b", "c"] 从1到2 被删 在删掉的地方添加 ,'ppp','qqq'....
// console.log(x); // ["a", "ppp", "qqq", "d", "e"] // join 拼接
// console.log(x.join('+')); // a+b+c+d+e
// c(x.join('')) ; // abcde //排序
var arr = [0,-5,6,-8];
//ASCII 排序
// console.log(arr.sort()); //[-5, -8, 0, 6]
// console.log(arr.reverse()); //[6, 0, -8, -5]
// 数学中的正常排序
arr.sort(function(a,b){
// return a-b; //正序
return b-a; // 反序
});
console.log(arr); // [-8, -5, 0, 6] [6, 0, -5, -8] </script>
</body>
</html>

  

作业

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
*{
margin:0;
padding:0;
}
ul{
list-style: none; /*去点*/
}
.a{
height: 20px;
width: 60px;
background: skyblue;
float: left;
margin-left: 20px;
text-align: center; /*水平剧中*/
cursor: pointer; /* 小手*/
}
.fu{
height: 230px;
width: 800px;
/*background:black;*/
margin: 100px auto;
position: relative; /*相对定位*/
} img{
height: 200px;
width: 800px;
/*margin: 30px auto;*/
position: absolute; /*绝对定位*/
left: 0px;
top: 30px;
display: none;
}
</style>
</head>
<body>
<div class="fu">
<ul>
<li class="a">地衣章</li>
<li class="a">地饿章</li>
<li class="a">地山章</li>
<li class="a">地事章</li>
</ul>
<ul class="pic">
<li><img style="display: block" src="https://res.shiguangkey.com//file/201806/19/20180619142252602590185.jpg"></li>
<li><img src="https://res.shiguangkey.com//file/201806/19/20180619141337485823895.jpg"></li>
<li><img src="https://res.shiguangkey.com//file/201806/21/20180621150342030454625.jpg"></li>
<li><img src="https://res.shiguangkey.com//file/201805/17/20180517113424433990524.jpg"></li>
</ul>
</div>
<script>
var btn = document.getElementsByClassName('a');
var m = document.getElementsByTagName('img');
for(let i=0; i<btn.length; i++){
// console.log(i);
btn[i].onclick=function () {
m[i].style.display='block';
for(let k=0; k<btn.length; k++){
m[k].style.display='none'; // 不显示
if (k == i){ // 如果 按下 的 K,I 相等则 显示
m[k].style.display='block';
}
}
}
} </script> </body>
</html>

  潭州课堂25班:Ph201805201 WEB 之 JS 第五课 (课堂笔记)

上一篇:潭州课堂25班:Ph201805201 WEB 之 Ajax第八课 (课堂笔记)


下一篇:潭州课堂25班:Ph201805201 WEB 之 JS 第四课 (课堂笔记)