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>
相关推荐
http阿拉丁神猫4 小时前
Go语言入门笔记:从基础到开发环境搭建(二)
开发语言·笔记·golang
不会就选b4 小时前
C++补充部分(一)--lambda 表达式
开发语言·c++
java1234_小锋4 小时前
【技术专题】HTML5 网页技术 - HTML5 Canvas 基础以及动画入门
前端·html·html5
Pniubi7 小时前
HashMap的扩容和树化边界
java·开发语言
知了学历孙老师8 小时前
小自考的校考和统考,出题方和难度差在哪
java·大数据·前端
gCode Teacher 格码致知9 小时前
Pandas教学-17:Series与Dataframe的关系
开发语言·python·pandas
发量惊人的中年网工9 小时前
分公司访问总部ERP慢怎么办?SD-WAN组网的排查与验收要点
服务器·开发语言·php
下页、再停留9 小时前
【C#桌面客户端系列学习-15】生成可视化图表之折线图、柱状图、饼状图
开发语言·c#
ShineWinsu9 小时前
对于JavaScript:操作元素的解析
开发语言·前端·javascript·面试·web·dom·元素
福兮说10 小时前
JSON 格式正确,数据就可靠吗?我用一份自编配置检查类型与空值
java·前端·json