第二章 JavaScript 运算符与流程控制

1.一元运算符的前置与后置操作

n++表示先使用n完成整个表达式的计算后,n再自加;而++n表示n先自加,然后在进行表达式的运算。

let n = 1
let f = 2
let d = f + n++
console.log(d)//3
let n = 1
let f = 2
let d = f + ++n
console.log(d)//4

2.比较运算符

等于“==”,全等于“===”,这两者的区别是执行等于时会发生类型转换,而全等于不会。

let a= 1
let b = "1"
console.log(a == b)//true
console.log(a === b)//false

3.逻辑运算符与短路运算符

逻辑与“&&”,逻辑或“||”;短路与“&”,断路或“|”。

逻辑在条件确定后就不再进行判断,而端路运算符会继续判断。

let a = 2
let b = 2
console.log(a == 1  && b++ == 3)//false
console.log(b)//2
let a = 2
let b = 2
console.log(a == 1 & b++ == 4)//0
console.log(b)//3

可以使用逻辑或赋值。如果使用断路或,会返回0或1(标识假和真)。

let msg = prompt() || "weizhuren"
console.log(msg)//如果输入则显示输入内容,如果没有输入则显示weizhuren

4.三元表达式

简单的if语句可以使用三元表达式进行判断。

let age = 15
if(age >= 18){
  console.log("已成年")
}else{
  console.log("未成年")
}
//可以将上面的判断语句简写成以下三元表达式
console.log(age >= 18 ? "已成年" : "未成年")

5.switch

在switch,如果匹配成功则执行对应事件,如果全部不匹配则执行default内的事件。如果不添加break则在条件成立后,会一直执行到结束。

let name = "视频"
switch(name){
  case "产品":
  console.log("这是一个产品");
  break;
  case "视频":
  console.log("这是一个视频");
  break;
  case "音频":
  console.log("这是一段音频");
  break;
  default:
  console.log("未知内容")
  break;
}

6.while

循环语句,注意限制循环结束条件即可。

7.do···while

类似while,但是先执行一次循环再进行判断。

8.for

执行有规律的循环。

for(let i = 0;i < 10;i++){
  console.log(i)// 0 1 2 3 4 5 6 7 8 9
}

9.break与continue

break会直接跳出循环,而continue会终止本次循环,进入下一次循环。

for(let i = 0;i < 5;i++){
  if(i == 3){
    break
  }
 console.log(i)//0 1 2 
}

for(let i = 0;i < 5;i++){
  if(i == 3){
    continue
  }
  console.log(i)//0 1 2 4
}

10.label标签

label标签可以标明一个循环。

first:for(let i = 1;i <= 10;i++){
  second:for(let n = 1;n<= 10 ;n++){
    if(n % 2 == 0){
      console.log(i,n)
    }
    if(n + i > 10){
    break first//直接跳出第一层循环
    }
  }
}
// 1 2
// 1 4
// 1 6
// 1 8
// 1 10

11.for···in

for···in可以遍历数组和对象,对于索引值进行循环。

let movies = [
  {name:"降临",grade:7.7},
  {name:"喜宴",grade:8.9},
  {name:"奇迹男孩",grade:8.6}
]
for(let i in movies){
  console.log(movies[i].name,movies[i].grade)//降临 7.7 喜宴 8.9 奇迹男孩 8.6
}
for(let key in window){
  console.log(key)//输出window的属性值
}

12.for···of

for···of类似于for···in,for···of方法是对元素值进行遍历。

let movies = [
  {name:"降临",grade:7.7},
  {name:"喜宴",grade:8.9},
  {name:"奇迹男孩",grade:8.6}
]
for(let value of movies){
  console.log(value .name,value .grade)//降临 7.7 喜宴 8.9 奇迹男孩 8.6
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值