JS-04.基础语法-运算符

一、运算符:

算数运算符:+,-,*,/,%,++,--

赋值运算符:=,+=,-=,*=,/=,%=

比较运算符:>,<,>=,<=,!=,==,===

逻辑运算符:&&,||,!

三元运算符:条件表达式?true_value:false_value

==与===:

==会进行类型转换,===不会进行类型转换

二、类型转换:

字符串类型转为数字:

将字符串字面值转为数字,如果字面值不是数字,则转为NaN

其他类型转为boolean:

Number:0和NaN为false,其他均转为true

String:空字符串为false,其他均转为true

Null和undefined:均转为false

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        /* 
            运算符:
            算数运算符:+,-,*,/,%,++,--
            赋值运算符:=,+=,-=,*=,/=,%=
            比较运算符:>,<,>=,<=,!=,==,===
            逻辑运算符:&&,||,!
            三元运算符:条件表达式?true_value:false_value
            ==与===
            ==会进行类型转换,===不会进行类型转换
            
            类型转换:
            字符串类型转为数字:
                将字符串字面值转为数字,如果字面值不是数字,则转为NaN
            其他类型转为boolean:
                Number:0和NaN为false,其他均转为true
                String:空字符串为false,其他均转为true
                Null和undefined:均转为false
        */
        var a = 10;
        var b = '10';
        var c = 10;

        // alert(a==b)  // true
        // alert(a===b)  // false
        // alert(a==c)  // true

        alert(parseInt("12"));   // 12
        alert(parseInt("12A45"));  // 12 遇到A无法类型转换后面的就不转换了
        alert(parseInt("A45"));   // 无法类型转换为int,直接转为NaN(not a number)

        if(0) {
            alert("0转换为false");
        }
        if(NaN) {
            alert("NaN转换为false");
        }
        if(-1) {
            alert("其余的均转换为true");
        }
        if("") {
            alert("空字符串为false")
        }
        if(" ") {
            alert("非空皆为true")
        }
        if(null) {
            alert("null为false")
        }
        if(undefined) {
            alert("undefined为false")
        }
    </script>
</body>
</html>
相关推荐
普通网友7 分钟前
基于C++的操作系统开发
开发语言·c++·算法
狂团商城小师妹11 分钟前
JAVA外卖霸王餐CPS优惠CPS平台自主发布小程序+公众号霸王餐源码
java·开发语言·小程序
2501_941111341 小时前
C++中的策略模式高级应用
开发语言·c++·算法
心软小念2 小时前
用Python requests库玩转接口自动化测试!测试工程师的实战秘籍
java·开发语言·python
sanggou3 小时前
【Python爬虫】手把手教你从零开始写爬虫,小白也能轻松学会!(附完整源码)
开发语言·爬虫·python
普通网友3 小时前
C++与Qt图形开发
开发语言·c++·算法
!win !3 小时前
前端跨标签页通信方案(下)
前端·javascript
f***45323 小时前
基于SpringBoot和PostGIS的各省与地级市空间距离分析
android·前端·后端
编码追梦人3 小时前
从 “手忙脚乱“ 到 “行云流水“:华为云 DevUI 与 MateChat 如何让前端开发飞起来
前端·华为云
yue0083 小时前
C# 更改窗体样式
开发语言·c#