==和===的区别,被坑的一天

在 JavaScript 中,===== 都用于比较两个值,但它们有一个重要的区别:

1. == (宽松相等运算符)

== 进行比较时,会 自动类型转换(也叫做强制类型转换),即如果比较的两个值的类型不同,JavaScript 会尝试将它们转换成相同的类型,再进行比较。

2. === (严格相等运算符)

=== 进行比较时 不会进行类型转换,也就是说,只有当两个值 类型相同且值相等 时,=== 才返回 true

举个例子:

1. 使用 == 时的情况(类型转换):
javascript复制代码
console.log(1 == '1');  // true
  • 1 是数字类型,'1' 是字符串类型。
  • == 会尝试将字符串 '1' 转换为数字 1,然后比较 1 == 1,结果为 true
javascript复制代码
console.log(false == 0);  // true
  • false 是布尔值,0 是数字。
  • == 会把 false 转换为 0,然后比较 0 == 0,结果为 true
2. 使用 === 时的情况(不进行类型转换):
javascript复制代码
console.log(1 === '1');  // false
  • 1 是数字类型,'1' 是字符串类型。
  • === 不会进行类型转换,直接比较 1'1',因为它们的类型不同,所以结果为 false
javascript复制代码
console.log(false === 0);  // false
  • false 是布尔值,0 是数字类型。
  • === 不会进行类型转换,直接比较 false0,因为它们的类型不同,所以结果为 false

总结:

  • == 会进行 类型转换,如果值可以转换成相同类型,它们就会被认为是相等的。
  • === 不会进行类型转换,只有 类型和值都相等 时,结果才为 true

因此,为了避免潜在的错误和不可预期的结果,推荐使用 ===,即严格相等运算符,这样比较更为准确和清晰。

讲讲今天:

代码:

computed: {selectedDurationLabel() {const option = this.durationOptions.find(option => option.value === this.room.duration);return option ? option.label : '选择起订时长';}},

功能:

在点击编辑的时候,起订时长那显示原先存的值,

实现:

我在这里有一个判断,拿原先存的值去和我的durationOptions去比较,如果找到一样的,那么就给他返回该值,可以做到默认显示的效果

遇到的问题:

这里一直都是显示:选择起订时长,并没有达到我要的效果,然后我想办法测试了一下,尝试分别输出这两个值,发现,这两个值在控制台上颜色不一样,突然就想到会不会是因为这个原因引起的(因为颜色不一样肯定字段类型也不一样)
在这里插入图片描述
然后就解决这个问题了(类型转换一下或者改为==就好)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/65855.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何不修改模型参数来强化大语言模型 (LLM) 能力?

前言 如果你对这篇文章感兴趣,可以点击「【访客必读 - 指引页】一文囊括主页内所有高质量博客」,查看完整博客分类与对应链接。 大语言模型 (Large Language Model, LLM, e.g. ChatGPT) 的参数量少则几十亿,多则上千亿,对其的训…

使用Python和OpenCV进行视觉图像分割

简介🎁 在图像处理领域,图像分割是一项基础且关键的技术,它涉及到将图像划分为若干个具有特定属性的区域。本文将通过一个实践项目,展示如何使用Python编程语言,结合OpenCV库,对一张玫瑰花的图片进行图像分…

Adobe ColdFusion 关键安全漏洞紧急修复

随着网络攻击的日益严重,网络安全问题逐渐引起全球的广泛关注。Adobe 最近发布的一项紧急补丁为其 ColdFusion 平台解决了一个关键安全漏洞。这一漏洞以 CVE-2024-53961 标识,经过评估后被赋予了 7.4 的 CVSS 基分数,形势不容小觑。尤其值得一…

代码解析:安卓VHAL的AIDL参考实现

以下内容基于安卓14的VHAL代码。 总体架构 参考实现采用双层架构。上层是 DefaultVehicleHal,实现了 VHAL AIDL 接口,并提供适用于所有硬件设备的通用 VHAL 逻辑。下层是 FakeVehicleHardware,实现了 IVehicleHardware 接口。此类可模拟与实…

vLLM结构化输出(Guided Decoding)

简介 vLLM 的结构化输出特性是通过“引导式解码”(Guided Decoding)实现的,这一功能允许模型在生成文本时遵循特定的格式约束,例如 JSON 模式或正则表达式,从而确保生成的内容符合预期的结构化要求。 后端引擎 启动…

部署SenseVoice

依赖 Conda cuda pythor 查看GPU版本-CSDN博客 创建虚拟conda环境 conda create --name deeplearn python3.10 conda activate deeplearn git clone https://github.com/FunAudioLLM/SenseVoice.git cd SenseVoice pip install -r requirements.txt pip install gradio pip …

基于51单片机(STC32G12K128)和8X8彩色点阵屏(WS2812B驱动)的小游戏《贪吃蛇》

目录 系列文章目录前言一、效果展示二、原理分析三、各模块代码1、定时器02、矩阵按键模块3、8X8彩色点阵屏 四、主函数总结 系列文章目录 前言 《贪吃蛇》,一款经典的、怀旧的小游戏,单片机入门必写程序。 以《贪吃蛇》为载体,熟悉各种屏幕…

关于flinkCDC监控mysql binlog时,datetime类型自动转换成时间戳类型问题

flinkCDC监控mysql binlog时,datetime类型自动转换成时间戳类型 问题解决1.自定义转换器类2.代码引用 结果 问题 flink版本:1.18.1,mysql版本:8.0.40 使用FlinkCDC的MySqlSource 连接mysql,对于datetime 类型字段&…

SwiftUI 撸码常见错误 2 例漫谈

概述 在 SwiftUI 日常撸码过程中,头发尚且还算茂盛的小码农们经常会犯这样那样的错误。虽然犯这些错的原因都很简单,但有时想要快速准确的定位它们却并不容易。 况且这些错误还可能在模拟器和 Xcode 预览(Preview)表现的行为不甚…

【Unity】 HTFramework框架(五十八)【进阶篇】资源及代码热更新实战演示(Deployment + HybridCLR)

更新日期:2025年1月2日。 Github源码:[点我获取源码] 索引 资源及代码热更新实战演示运行演示Demo1.克隆项目工程2.更新子模块3.打开项目4.打开入口场景5.设置远端资源服务器地址6.导入HybridCLR7.初始化HybridCLR8.发布项目9.部署资源版本10.运行Exe11.…

SpringCloud源码分析-nacos与eureka

一、高版本为什么优先用nacos 如果用alibaba springcloud,那么就是阿里的技术体系。nacos属于阿里的原生技术栈,所以阿里更偏向于用nacos作为服务发现注册。 二、对比分析 Spring Cloud Alibaba 推荐使用 Nacos 作为服务发现和配置管理的首选组件&…

(五)人工智能进阶:基础概念解释

前面我们介绍了人工智能是如何成为一个强大函数。接下来,搞清损失函数、优化方法和正则化等核心概念,才能真正驾驭它! 1. 什么是网络模型? 网络模型就像是一个精密的流水线工厂,由多个车间(层&#xff0…

级联配准learning

1.定义 级联配准(Cascade Registration)是一种在图像处理、计算机视觉等领域广泛应用的技术。它主要用于将不同视角、不同模态或者不同时间获取的图像进行精确的对齐,并且是通过多个阶段(级联)的处理来逐步优化配准的精…

初学STM32 --- 外部SRAM

SRAM简介 静态随机存取存储器(Static Random-Access Memory,SRAM) 1M字节容量的SRAM芯片XM8A51216为例介绍。 SRAM特性: 高速:具有最高访问速度15ns 低功耗:80MHz时55mA,待机电流 20mA TTL电平兼容 …

leetcode hot 100 前k个高平元素

347. 前 K 个高频元素 已解答 中等 相关标签 相关企业 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 class Solution(object):def topKFrequent(self, nums, k):""":type nums: Lis…

Zabbix:自动发现功能讲解,包括网络发现、自动注册、低级别自动发现以及案例分享。

ZBX:自动发现功能讲解 视频讲解:Zabbix 自动发现网络发现概述操作方法 自动注册概述操作方法 低级别自动发现概述工作原理及工作流程案例1,base进程监控要求:步骤: 案例2,磁盘IO监控要求:步骤&a…

Windows上安装Go并配置环境变量(图文步骤)

前言 1. 本文主要讲解的是在windows上安装Go语言的环境和配置环境变量; Go语言版本:1.23.2 Windows版本:win11(win10通用) 下载Go环境 下载go环境:Go下载官网链接(https://golang.google.cn/dl/) 等待…

python3.x支持,但python2.7不支持的语法

python3.x支持,但python2.7不支持的语法 1.属性访问的问题&#xff1a; 你可能是在 params 中直接使用了某个对象的属性&#xff0c;而不是该属性的值。在你提供的信息中&#xff0c;<slot wrapper next of instance objects> 指的是一个对象的槽位&#xff08;slot wra…

开源GTKSystem.Windows.Forms框架:C# Winform跨平台运行深度解析

开源GTKSystem.Windows.Forms框架&#xff1a;C# Winform跨平台运行深度解析 一、跨平台框架的崛起 1.1 跨平台技术的现状与需求 在当今快速发展的科技时代&#xff0c;软件开发的需求日益多样化。随着移动设备和操作系统的不断涌现&#xff0c;开发者面临着前所未有的挑战&…

#端云一体化开发# #HarmonyOS Next#《说书人》鸿蒙原生基于角色的对话式文本编辑开发方案

1、写在前面 过去的一百年里&#xff0c;在“编程”的这个行业诞生之初&#xff0c;人们采用面向过程的方式进行开发&#xff0c;但是&#xff0c;伴随着程序规模的日益增大&#xff0c;程序的复杂度也随之增加&#xff0c;使用结构化编程方法来管理复杂的程序逻辑变得越来越困…