01-复习第一天内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
/* 1.直接量是什么? */
// 直接在 js 中写的数据~~~~~~!
/* 2.数据类型是什么? */
// 因为 js 中的数据 明显可以分成很多类 ,所以 就分出来若干个数据类型
/* 3.如何检测数据类型? */
//typeof --> 类型名称字符串
var a = typeof '小白'; // var a = 'string' ;
var b = typeof (1111122222); // var b = 'number' ;
console.log(a,b);
/* 4.变量的本质是什么? */
// a.本质上 是 内存里的 一块空间 变量名是 这个空间的"代号"
// b.通俗的说, 变量就是 一个容器 用来装数据~~~!!一次只能装一个数据
var tcName = '菜鸟';
tcName = '小白';
console.log(tcName);
console.log(tcName + '好好学习!');
</script>
</head>
<body>
</body>
</html>
02-数据类型
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
// 1.简单的数据类型------------------------------
// 1.1 数值类型 - Number
// a.整数 小数 负数 都属于数值
// b.最大值和最小值 -> Number.MAX_VALUE 和 Number.MIN_VALUE
// C.数值类型 中的三个特殊值 :Infinity ,-Infinity ,NaN
// d.无穷大Infinity 无穷小-Infinity
// e.【NaN - 非数值】 (not a number) : 代表 算数运算后的错误结果
/* !!!!!A.当算数运算符 运算 一个不是数值的数据时 无法计算结果 所以 返回NaN */
var num1 = 15 *'小白白';
console.log(num1);
/* !!!!!B.任何值 与NaN运算结果 都是NaN */
console.log(NaN / 100);
/* !!!!!C.NaN 与任何值都不相等,包括它自己 */
/* D.使用insNaN(x) 来 检测x 是不是一个 NaN
如果 x 是一个NaN 就返回true
不是 则 false*/
console.log ('isNaN(520) = ' + isNaN(520));
console.log ( 'isNaN(\'嘻嘻\')=' + isNaN('嘻嘻'));
//1.2 字符串的类型 -String
var str1 = '君住长江头';
var str2 = '我住长江尾';
var str3 = '日日"思君"不见\'君';
var str4 = '共饮一江水';
console.log('我要换行\n必须换行~~!');
console.log ( str1, str2, str3 ,str4);
//1.3 布尔值类型 -Boolean
var male = true;
var female = false;
console.log(male,female);
//1.4未定义类型 - Undefined
// 有且只有一个值 Undefined
// 当一个变量 声明 但没有赋值 ,默认就时 undefined
var a
console.log(a);
//1.5 空类型 - Null
// 有且只有一个值 null
// prompt 输入框 , 用户点击取消时 , 返回的是 null;
var usrName =prompt('请输入您的名字:');
console.log('usrName =' + usrName);
//undefined 和 null 判等
console.log(1==1); // true
console.log(undefined == null); //true
console.log(undefined ===null); // false
/* 2.复杂数据类型--- */
// Object - 对象
// Array - 数组
// Function - 函数
// 自定义类型
</script>
</head>
<body>
</body>
</html>
03-符合算数运算符
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
//1.算数运算符 + - * / % **
// **求次方 次幂
console.log(2**3); //2*2*2=8
console.log(3**3); //3*3*3=27
//2. =赋值运算符
// =会将右边的 值 赋给左边
var a = 1;
// var usrName = prompt('你叫什么名字?');
// console.log(a,usrName);
//3.复合赋值运算符---------
//作用 : 将变量 的值取出来 , 与另一个值 运算 , 并将 结果重新赋值到这个变量
// 口诀: 对某个变量自身做运算
// += -= *= /= %=
//a. +=
var num1 = 1;
// num1 = num1 + 2; num1=3
num1 += 2;
console.log(num1); // num1=3
//b. -=
var num2 = 100;
// num2 = num2 - 50; //num2 = 50
num2 -= 50
console.log(num2); // num2 =50
//c.*=
var num3 = 3;
// num3 = num3 *3; //num3 =9
num3 *= 3
console.log(num3);
//d./=
var num4 = 9;
// num4 = num4 / 3; num4 = 3
num4 /=3;
console.log(num4);
//神奇的+= ----- ---
//a.如果变量 是和 数值运算 ,那么+=就起到了 算数运算的效果
var num =111;
num += 111;
console.log(num);// num = 222
//b. 如果 变量 是和 非数值 运算 , 那么+= 就会起到 字符串的连接作用
var str = 123;
str += '八千里路云和月';
str += '唧唧复唧唧';
str += '木兰当户织';
console.log('str=' +str); //str=123八千里路云和月唧唧复唧唧木兰当户织
</script>
</head>
<body>
</body>
</html>
04-比较运算符号
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
//1.比较运算符 : 比大小的~~~~!!!!
// 运算符 本身 没有意义 要和两边 数据 组成表达式 才有意义
// > < >= <= == != === !==
// 【永远都会返回 bool值】,要么 返回true ,要么返回 false
console.log(1 > 2); // false
console.log(1 < 2); // true
console.log(1 == 2); // false
console.log(1 == 1); // true
// ==只判断值是不是相等 ,不判断类型
// ===全等号 判断值 也判断类型
console.log(1=='1'); //true
console.log(1==='1'); //false
console.log(1===1); //true
//大于等于 和 小于等于
// 注意 : 条件是或的关系 只要满足一个就返回 true ,只有两个都不满足时才返回 false\
console.log(1 >= 2); //false
console.log(1 >= 1); //true
console.log(1 >= 0); //true
//不等号 全不等号
console.log(1 != 1); //false
console.log(1 != 2);//true
console.log(1 != '1');//false
console.log(1 !==1); //false
</script>
</head>
<body>
</body>
</html>
05-逻辑运算符
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
// 1.逻辑运算符
// && || !
//1.1 逻辑与&&------
//只有&&两边的数据 都为 true 时 ,整个逻辑 与表达式 才会返回true
// 只要有一个是 false,整个 逻辑表达式 就会返回 false
// 口诀: 一假都假
// 左边的表达式 && 右边的表达式 -> 表达式结果
// true && true true
// false && true false
// true && false false
// 找男朋友 -- 高 富 帅 情商高
// 如果 四个 条件 都要满足 才 成立: 逻辑与 var isOk = 高 && 富 && 帅 && 情商高;
// 高富帅情商 4个条件 都要满足 才 返回 true
// 只要有一个不满足,都返回 false
var isOk = 1 > 2 && 1 >= 0; //false
// false && true // false
var isOk = 1 == 1 && 1 >= 0; // true
// true && true // true
var isOk = 1 == 1 && 1 >= 0 && 2 > 1;//true
// true && true && 2 > 1
// true && true
//1.2 逻辑或 || ---------------------------------------------------------------
// 只要 || 两边有一个是 true,整个表达式 就返回 true
// 两边都是 false,整个表达式 才返回 false
// 口诀:一真都真
// 左边的表达式 || 右边的表达式 -> 表达式结果
// true || false true
// false || true true
// false || false false
// 如果 四个 条件中, 满足一个就成立:逻辑或 var isOk = 高 || 富 || 帅 || 情商高;
// 高富帅情商 4个条件 只要满足一个 就 返回 true
// 只有4个条件都不满足,才返回 false
var isOk = 1 > 2 || 1 >= 0; // True
// false || true -> true
var isOk = 1 == 1 || 1==0; // true
// true || false -> true
// 1.3 逻辑非(取反运算符)
// 可以用来 将 一个 布尔值 变成 相反的值
// !true -> false
// !false -> true
console.log('!true =' + !true);
console.log('!false =' + !false);
console.log(!(1 > 2)); //true
</script>
</head>
<body>
</body>
</html>
06-条件语句
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
//1.顺序结构 语句 ,由上到下的 顺序执行 每一行代码
/* console.log('白白考试回来了~~');
console.log('他妈妈问他打了多少分');
console.log('小白打了59分');
console.log('他妈妈狠狠的打他屁股了~~~');
console.log('白白睡着了~~~'); */
//2.条件结构 语句
//2.1 if 单个条件
// if(bool){
// if 代码块
// }
// 如果 if的小括号中 是 true,那么 就执行 if代码块(if后紧跟着的 大括号里的代码)
// 是false, 那就跳过 if代码块,执行 后面的代码
var score = 66;
console.log('白白考试回来了~~');
console.log('他妈妈问他打了多少分');
console.log('白白打了 ' + score + ' 分');
if (score < 60) {
console.log('他妈妈狠狠的打他屁股了~~~');
}
console.log('白白睡着了~~~');
// if else 二选一
/* if (bool) {
if 代码块
}
else {
else代码块
} */
// 如果 if 中的是 true,就执行 if 代码块
// false,就执行 else代码块
//二选一:if else 两个 代码块,只会 根据条件结果 执行一个
var score = 66;
console.log('白白考试回来了~~');
console.log('他妈妈问他打了多少分');
console.log('白白打了' + score + '分');
if (score < 60) {
console.log('他妈妈狠狠的打他屁股了~~~')
} else {
console.log('妈妈奖励一百块')
}
//2.3 if else if else ......多条件
/* 多条件 if 可以用来 在一个业务中 根据不同条件 执行不同的代码, 一旦满足一个条件,后面的else if 就不执行了,和 多个 if 比起来,执行效率更高
if (bool) {
} else if (bool) {
} else if (bool) {
} else {
}
*/
var score = 18;
console.log('白白考试回来了~~');
console.log('他妈妈问他打了多少分');
console.log('白白打了' + score + '分');
if (score < 30) {
console.log('爸妈混合双打!')
} else if (score >= 30 && score < 60) {
console.log('爸爸单打!')
} else if (score >= 60 && score < 80) {
console.log('妈妈单打~~')
} else if (score >= 80) {
console.log('奖励花裙子!!!!!')
}
var usrName = '小菜鸟';
if (usrName == '小菜鸟') {
console.log('我们一起写代码学编程');
} else if (usrName == '小白白') {
console.log('我们一起去健身');
} else {
console.log('不要和陌生人说话!!!');
}
//2.4 嵌套if
var score = 99;
console.log('白白考试回来了~~');
console.log('他妈妈问他打了多少分');
console.log('白白打了' + score + '分');
if (score < 60) {
console.log('妈妈打她!');
if (score < 30) {
console.log('一顿暴打');
if (score < 10) {
console.log('不知道还会发生什么可怕的事情~~!');
}
}
} else if (score >= 60 && score < 80) {
console.log('给500块~~~~');
} else if (score >= 80 && score < 100) {
console.log('给1000块~~~~');
} else {
console.log('给10000块~~~~');
}
console.log('小白睡着了~~~');
//3.循环结构语句
</script>
</head>
<body>
</body>
</html>
07-显示类型转换
<html>
<head>
<title></title>
<meta charset='UTF-8' />
<script>
//1. 什么是类型转换? -- 将 一种类型的数据 转成 另外一种 类型
//1.1 转数值 parseInt parseFloat Number
//a.parseInt 转 整型数值
// a1.如果 遇到 小数字符串,会将 小数点和小数部分 去掉,只转换 整数部分
// a2.如果 转换的 数据 不是一个 数值字符串,就会转换失败,返回 NaN
// a3.如果 遇到 非数值,会自动停止转换,只转换非数值 前面的 数据
// a4.如果 最前面是 空格,会 自动 忽略空格,转换后面的数据
// a5.如果 中间遇到空格,会自动停止转换,只转换 空格 前面的 数据
var num = parseInt('11'); // '11' -> 11
console.log(typeof num); // number
var num = parseInt('11.1'); //'11.1' -> 11
console.log(num);
var num = parseInt('aaaa'); // NaN
console.log(num);
var num = parseInt('12a34'); // 12
console.log(num);
var num = parseInt('a12'); // NaN
console.log(num);
var num = parseInt(' 12'); //12
console.log(num);
var num = parseInt(' 12 34'); //12
console.log(num);
//案例:将 '100px' -> '110px' --------------------------------------
var divWidth = '100px';
divWidth = parseInt(divWidth); //divWidth = 100
divWidth += 10;// divWidth = 100 + 10;
divWidth += 'px';// 110 + 'px' -> '110px'
console.log('divWidth=' + divWidth);
//b.parseFloat 转小数
var num = parseInt('11.1'); // 11
var num = parseFloat('11.1'); // 11.1
console.log(num);
var num = parseFloat('aaaa'); // NaN
console.log(num);
var num = parseFloat('12a34'); // 12
console.log(num);
var num = parseFloat('a12'); // NaN
console.log(num);
var num = parseFloat(' 12'); //12
console.log(num);
//c.Number 转 任何数值
var num = Number('111000');
console.log(num);
var num = Number('111000.777');
console.log(num);
var num = Number('111000aaa111'); // NaN
console.log(num);
//1.2 转字符串
// 数据.toString() String(x)
//a. 数据.toString() 可以 用来 将 数据 转成 字符串
var num = 11;
console.log(num.toString()); // 11 -> '11'
//注意:数值直接量 不能 通过 .来调用 toString()方法,因为 会被当做 小数点
// console.log(11.toString());
console.log(true.toString());
//b.String(x) 可以用来 将 没有 toString()方法的 数据 转成 字符串,比如:undefined 和 null
// console.log(undefined.toString()); //报错:Cannot read property 'toString' of undefined
var str = String(undefined);
console.log(str);
var str = String(null);
console.log(str);
//1.3 转布尔值
// Boolean(x) 用来 将 数据 转成 true 或者 false
// 会转成 false 的有 8 种: 0 , -0,NaN ,'',undefined , null , false , document.all
// 其他的全都转成 true
var isOk = Boolean('false');//true
console.log(isOk);
var isOk = Boolean('小白白'); //true
console.log(isOk);
var isOk = Boolean(Infinity); //true
console.log(isOk);
var isOk = Boolean('\n'); //true
console.log(isOk);
</script>
</head>
<body>
</body>
</html>