JS基础第二部分

这篇博客深入探讨了JavaScript的基础知识,包括赋值、一元、比较和逻辑运算符,详细阐述了运算符优先级。接着,介绍了表达式和语句的概念,并讲解了如何使用if语句、三元运算符以及switch语句进行条件控制。最后,讨论了循环结构在JavaScript编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

赋值运算符

赋值运算符:对变量进行赋值的运算符
 已经学过的赋值运算符:= 将等号右边的值赋予给左边, 要求左边必须是一个容器
其他赋值运算符:   +=   -=   *=   /=   %=
 使用这些运算符可以在对变量赋值时进行快速操作
 <script>
        let num = 4
        num += 5   /*num = num + 5*/
        console.log(num)


        let div = 6
        div++
        console.log(div)
    </script>
1. = 赋值运算符执行过程?
将等号右边的值赋予给左边, 要求左边必须是一个容器
2. += 出现是为了简化代码, 比如让 let num = 10 ,num 加5 怎么写呢?
num += 5

一元运算符

自增:
符号:++
作用:让变量的值 +1
自减:
 符号:--
作用:让变量的值 -1
自增运算符的用法

比较运算符

比较运算符:
 > : 左边是否大于右边
 <: 左边是否小于右边
 >=: 左边是否大于或等于右边
 <=: 左边是否小于或等于右边
 ==: 左右两边值是否相等
 ===: 左右两边是否类型和值都相等
 !==: 左右两边是否不全等
 比较结果为boolean类型,即只会得到 true 或 false
    <script>
        console.log(5 === '5')
        console.log(5 == '5')
        console.log(5 != '5')
        console.log(5 !== '5')
        let i = 1
        console.log(i++ + ++i + i)
        // 结果为7

    </script>
NaN不等于任何值,包括它本身
涉及到"NaN“ 都是false
尽量不要比较小数,因为小数有精度问题
不同类型之间比较会发生隐式转换
最终把数据隐式转换转成number类型再比较
所以开发中,如果进行准确的比较我们更喜欢 === 或者 !==
1. = 和 == 和 === 怎么区别?
 = 是赋值
 == 是判断 只要求值相等,不要求数据类型一样即可返回true
 === 是全等 要求值和数据类型都一样返回的才是true
 开发中,请使用 ===
2. 比较运算符返回的结果是什么?
 结果只有2个, true 或者 false

逻辑运算符

 

<script>
        let num = +prompt('请输入一个数')
        alert(num % 4 === 0 && num % 100 !== 0)
    </script>
一个数能被4整除,不能被100整除

运算符优先级

 表达式和语句

表达式:
表达式是可以被求值的代码,JavaScript 引擎会将其计算出一个结果。
语句:
语句是一段可以执行的代码。
比如: prompt() 可以弹出一个输入框,还有 if语句 for 循环语句等等
表达式:因为表达式可被求值,所以它可以写在赋值语句的右侧。
 表达式
num = 3 + 4
语句:而语句不一定有值,所以比如 alert() for和break 等语句就不能被用于赋值。
 语句
alert() 弹出对话框 console.log() 控制台打印输出

分支语句

 

1. if语句

<script>
        let num = +prompt('请输入你的成绩')
        if (num > 700 ) {
            alert('恭喜考入黑马') 
        } else {
            document.write(`
            <h1>考的什么鬼<h1>
            <img class="f3" src="https://img2.baidu.com/it/u=767121601,166077160&amp;fm=253&amp;fmt=auto&amp;app=120&amp;f=JPEG?w=500&amp;h=708" width="300px" />`)
        }
    </script>
if语句有三种使用:单分支、双分支、多分支

 

 

 

    <script>
        let name = prompt('请输入姓名')
        let num = prompt('请输入密码')
        if (name === 'pink' && num === '123456') {
            alert('登录成功')
        } else {
            alert('登录失败')
        }
    </script>

     <script>
        let year = prompt('请输入年份')
        if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
            alert(`${year}是闰年`)
        } else { 
            alert(`${year}是平年`) 
        }
    </script>

    <script>
        let num = prompt('请输入分数')
        if (num >= 90) {
            alert('优秀')
        } else if (num >= 80) {
            alert('良好')
        } else if (num >= 70) {
            alert('中等')
        } else if (num >= 60) {
            alert('及格')
        } else {
            alert('差评')
        }
    </script>

三元运算符

 

<script>
       let now = 4 > 1 ? '笨蛋' : '傻瓜'
       document.write(now)
    </script>

    <script>
        let num1 = prompt('请输入第一个数字')
        let num2 = prompt('请输入第二个数字')
        let num = num1 > num2 ? num1 : num2
        alert(num)
    </script>

    <script>
        let one = prompt('请输入一个数字')
        let two = one < 10 ? '0' + one : one
        alert(two)
    </script>

switch语句

    <script>
        let week = 5
        switch (week) {
            case 1:
                alert('睡觉')
                break
            case 2:
                alert('睡觉')
                break
            case 3:
                alert('睡觉')
                break
            case 4:
                alert('睡觉')
                break
            case 5:
                alert('睡觉')
                break
            default:
                alert('杀人')
        }
    </script>

 循环结构

while 循环
循环:重复执行一些操作while : 在…. 期间, 所以 while循环 就是在满足条件期间,重复执行某些代码。
比如我们运行相同的代码输出5次(输出5句 “我学的很棒”)

 

 

while循环的作用是什么?
 在满足条件期间,重复执行某些代码
 while循环三要素是什么?
 变量起始值
 终止条件(没有终止条件,循环会一直执行,造成死循环 )
 变量变化量(用自增或者自减)
    <script>
        // let flag = true
        // let i = 1
        // while(flag) {
        //     i++
        //     alert('月薪过万')
        //     if (i > 3) {
        //         flag = false
        //     }
        // }
        let i = 1
        while(i <= 100) {
            document.write(`<h1>${i}</h1>`)
            i++
        }
    </script>
100以内所有数字


    <script>
        let i = 1
        let sum = 0 
        while(i <= 100) {
            sum = sum + i
            i++
        }
        document.write(sum)   所有数字和100以内
       
       
        let i = 1
        let sum = 0
        while(i <= 100) {
            if (i % 2 === 0) {
                sum = sum + i
            }
            i++
        }
        document.write(sum)   100以内偶数和


        let i = 2
        let sum = 0
        while(i <= 100) {
            sum = sum + i
            i = i + 2
        }
        document.write(sum)    100以内偶数和

    </script>
    <script>
        let flag = true
        let sum = 0
        while(flag) {
            let caozuo = +prompt(`
            请选择您的操作:
            1.存款
            2.取款
            3.查看余额
            4.退出
            `)

            if (caozuo === 1) {
               let now = +prompt('存款')
               sum = sum + now
            } else if (caozuo === 2) {
               let out = +prompt('取款')
               sum >= out ? sum = sum - out : alert('您的余额不足')
            } else if (caozuo === 3) {
               alert(`您的卡里还剩下${sum}`)
            } else if (caozuo === 4) {
                alert('欢迎下次光临')
                flag = false
            } else {
                alert('请输入合法操作')
            }
        }
    </script>
取款机案例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值