当前位置: 首页 > news >正文

js-显示转换(强制转换)与隐式转换,==与===区别

1.显示转换(强制转换)与隐式转换
        1.1显示转换

        常见的JavaScript强制转换示例。

 (1) 一元加号+、一元减号-

  值是布尔值,true将被转换为1false将被转换为0

let a = "123";
let b = +a; // b的值为123,类型为Number
let b = -a; // b的值为-123,类型为Number

 (2)Number()函数

        值是布尔值,true将被转换为1false将被转换为0;如果值是null,将被转换为0;如果值是undefined,将被转换为NaN

let a = "123";
let b = Number(a); // b的值为123,类型为Number

 (3)parseInt()parseFloat()函数:

         parseInt()函数用于将字符串转换为整数,parseFloat()函数用于将字符串转换为浮点数。这两个函数都可以接受一个可选的基数参数,用于指定要解析的数字的基数(例如,二进制、八进制、十进制或十六进制)。

let a = "123.45";
let b = parseInt(a); // b的值为123,类型为Number
let c = parseFloat(a); // c的值为123.45,类型为Number
1.2隐式转换

 隐式转换(也称为自动类型转换),编译器会自动选择一个适合的类型来保证运算的正确性

let a = "5" + 5; // 结果为"55",字符串"5"被转换为数字5let a = true + 5; // 结果为6,布尔值true被转换为数字1
let b = false + 5; // 结果为5,布尔值false被转换为数字0let a = "5" + true; // 结果为"5true",布尔值true被转换为字符串"true"let a = {toString: () => "5"} + 5; // 结果为"55",对象被转换为字符串"5"
2.==与===区别

===(全等)

   ===操作符在比较两个值时,不仅会比较它们的值,还会比较它们的类型

==(等于)
   ==操作符在比较两个值时,会进行类型转换,然后进行比较同一类型下值是否相等

console.log("5" == 5); // true,因为"5"被转换为数字5
console.log("5" === 5); // false,因为"5"的类型是字符串,5的类型是数字,类型不同

console.log(null == undefined); // true,因为null和undefined在进行==比较时被认为是相等的
console.log(null === undefined); // false,因为null和undefined的类型不同
http://www.lryc.cn/news/494452.html

相关文章:

  • 【通俗理解】步长和学习率在神经网络中是一回事吗?
  • 【PTA】【数据库】【SQL命令】编程题2
  • Spring Boot林业产品推荐系统:用户指南
  • 【Conda 】Conda 配置文件详解:优化你的包管理与环境设置
  • win10中使用ffmpeg的filter滤镜
  • 设计模式 外观模式 门面模式
  • Prophet时间序列算法总结及python实现案例
  • 远程调用 rpc 、 open feign
  • Redis的几种持久化方式
  • 论文笔记(五十九)A survey of robot manipulation in contact
  • c#控制台程序26-30
  • 环形链表系列导学
  • IDEA2024创建一个spingboot项目
  • Nginx:ssl
  • QT配置文件详解
  • 根据合约地址判断合约协议的方法
  • 联想YOGA Pro 14s至尊版电脑找不到独立显卡(N卡)问题,也无法安装驱动的问题
  • Spring Web开发注解和请求(1)
  • Supervisor使用教程
  • Spark基本命令详解
  • Three.js 相机视角的平滑过渡与点击模型切换视角
  • jenken 打包linux包遇到的问题(环境变量)
  • 使用 Go 语言中的 Context 取消协程执行
  • python图像彩色数字化
  • cesium 3dtile ClippingPlanes 多边形挖洞ClippingPlaneCollection
  • docker 僵尸进程问题
  • 微软要求 Windows Insider 用户试用备受争议的召回功能
  • husky,commit规范,生成CHANGELOG.md,npm发版
  • DETR:一种新颖的端到端目标检测与分割框架
  • 前端js面试知识点思维导图(脑图)