JavaScript基础知识(三个判断、三个循环)

时间:2022-02-27 00:18:18

三个判断

if…else…只会执行其中一个条件

如果if条件中只有一个值,那么会默认转布尔;
if(1=="1"){
// 当括号中条件为true时,执行此处的代码
console.log(100);
}else{
//如果括号中条件不成立,此处代码是不执行的;
console.log(200);
}
if(true==[]){
console.log("100块钱")
}else if([]!==[]){
console.log("200块钱")
}else if(typeof NaN === "Number"){
console.log("250块钱")
}else{
console.log("300块钱");
}
if([]=={}){
console.log("100")
}
if(isNaN(true)){
console.log("100")
}
// 如果括号中只有一个值时,转布尔类型
if(undefined){
console.log(100)
if(0==false){
console.log(1)
if([]){
}
}
}

三元运算符: 一般用于处理简单的逻辑;

一般用于处理简单的逻辑;
? 前面放的是条件,问号后面是当条件成立时,执行的代码;
当条件不成立时,执行的代码;
if(1=="1"){
console.log(100)
}else{
console.log(200)
}
1=="1"console.log(100):console.log(200);
晚自习练习;
if(1=="1"){
if([]==false){
console.log(100)
}else{
console.log(200)
}
}else{
console.log("你对了");
}
1=="1"?[]==false?console.log(100):console.log(200):console.log("你对了");

switch case

进行绝对比较
扩号中的值和case后面的值进行绝对比较;===
break : 中止 中断;
default : 默认执行;
在条件中如果没有break,会继续向下执行;即便条件不成立;
var num = 10;
switch (num){
case "0":
console.log("第一天");
break;
case 0:
case 10:
console.log("明天");
break;
case false:
console.log("第二天");
break;
default:
console.log("后天");
}

三个循环

for循环

概述:JS是单线程的,每次只能执行一行代码;for循环是同步,需要等待for循环完成,才继续往下执行;

for 循环的四步曲:

1. 初始化变量
  1. 条件判断
  2. 执行循环体中的代码;
  3. 执行i++;
    1–>2–>3–>4–> 2–>3–>4–> 2–>3–>4
for(var i=0;i<5;i++){
//此处的代码都是循环体的代码;
// i=0 0<100
// i=1
//...
// i=2
// i=3
// i=4
// i=5 不再执行循环体;
console.log(i);
console.log(100);
}
console.log(i);
i ++ : 在自身基础上+1;
var a = 0;
console.log(a++);// 先输出a的值,然后再+1;
console.log(a);
continue;// 结束本轮循环;for循环下面的代码都不再执行;
break: 结束整个循环;i++ 不再执行;

for in循环

var obj ={a:1,b:2,c:3,12:16,1:2};
for in: 遍历循环对象;
循环中,只能用对象名[属性名]来获取属性值;
循环次数:跟当前对象键值对的个数有关;
key : 是字符串
在循环中,如果有数字的话,先输出,并且按照数字大小顺序,越小越先输出;
不允许写对象名.属性名
for(var key in obj){
console.log(key);// 属性名;
console.log(obj[key]);// 属性值

while循环

一般用于不知道循环多少次,一般用于阻塞线程

// while 循环: 不知道循环多少次;
var i =1;
while(i<6){
console.log(1);
i++;
}