javascript - 使用比较运算符的问题
问题描述
控制台日志记录this.byPassViewState
返回["01"]
如果我这样做this.byPassViewState === ['01']
,它会返回false
typeof(this.byPassViewState)
返回object
我的问题是为什么this.byPassViewState
返回 false ?它应该是true
对的?请告诉我我在这里做错了什么
解决方案
您不能仅将 2 个数组与 using==
或===
运算符进行比较。
比较数组的最简单方法是使用JSON.stringify()
.
let byPassViewState = ["01"];
let compare = (JSON.stringify(byPassViewState) == JSON.stringify(["01"]) );
console.log(compare);
推荐阅读
- ubuntu - 如何删除/删除akeneo?
- zabbix - 使用参数从 Zabbix Server 执行脚本
- javascript - 'array[array.length - 1] = array.pop()' 会产生未定义的行为吗?
- excel - 尝试通过在 Azure DevOps Pipeline 中使用命令行任务执行 EXE 来打开 excel 文件时出现异常
- python - 由于我没有权限,因此无法使用 python 的“shutil”复制目录
- spring-boot - 使用 MockitoJunitRunner 进行单元测试:thenReturn 总是为任何(...)匹配器返回 null
- sql - Redshift percentile_disc 查询和分组依据
- mysql - 将两个查询合二为一,条件不同
- r - 如何在 r 中分别导出不同大小的列表及其名称?
- reactjs - React Highcharts 多次触发 setExtremes 事件