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>
相关推荐
轻口味25 分钟前
命名空间与模块化概述
开发语言·前端·javascript
前端小小王1 小时前
React Hooks
前端·javascript·react.js
迷途小码农零零发1 小时前
react中使用ResizeObserver来观察元素的size变化
前端·javascript·react.js
晓纪同学1 小时前
QT-简单视觉框架代码
开发语言·qt
威桑1 小时前
Qt SizePolicy详解:minimum 与 minimumExpanding 的区别
开发语言·qt·扩张策略
飞飞-躺着更舒服1 小时前
【QT】实现电子飞行显示器(简易版)
开发语言·qt
明月看潮生2 小时前
青少年编程与数学 02-004 Go语言Web编程 16课题、并发编程
开发语言·青少年编程·并发编程·编程与数学·goweb
娃哈哈哈哈呀2 小时前
vue中的css深度选择器v-deep 配合!important
前端·css·vue.js
明月看潮生2 小时前
青少年编程与数学 02-004 Go语言Web编程 17课题、静态文件
开发语言·青少年编程·编程与数学·goweb