【发布时间】:2020-12-29 16:23:56
【问题描述】:
我的代码是:
audio_files = [{id: "78", isProfileImg: "1"},{id: "145", isProfileImg: "0"}];
console.log(audio_files.filter((x) => x.id == 78));
开发机中的结果
[{…}]
0: {id: "78", isProfileImg: "1"}
length: 1
__proto__: Array(0)
生产结果
[{}]
0:length: 0
__proto__: Array(0)
有人遇到过同样的问题吗?
【问题讨论】:
-
首先,考虑使用
===而不是==。然后,确保 dev 和 prod 中的两个数据集相同。如果是,它们应该工作相同 -
好像你在生产中没有id为78的文件,数据集是一样的
-
@CertainPerformance
"78" === 78是false但"78" == 78是true。我认为在这种情况下==更好? -
@Nick 显式使事情更清楚,并且还会显示是否存在强制问题。如果数据中确实包含id的字符串,那么就做
=== '78'吧? -
@CertainPerformance 是的好点 :)
标签: javascript production-environment