【问题标题】:How can I make an array true or false?如何使数组为真或假?
【发布时间】:2019-09-09 22:20:16
【问题描述】:

在 Code.org 上,我正在尝试进行一项测验,根据用户在数组中放置的内容来选择答案。但是,无论数组中的内容是什么,结果总是错误的。

我尝试将语句更改为具有多个等号,我尝试向后执行并创建 if 语句 if list !== [list] 并尝试删除引号。没有任何效果。我也尝试在 if 语句中定义 correctlist 变量,但这仍然产生错误。

var mylist = ["a". "b", "c"];
var correctlist;

 if (mylist == ["a", "b", "c"]) {
  correctlist = true;
} else {
  correctlist = false;
}
console.log(correctlist);

结果总是假的。

我希望控制台日志显示为 true,但它总是显示为 false。

【问题讨论】:

  • 在第 1 行中,“a”后面应该有逗号而不是句号吗?

标签: arrays if-statement arraylist boolean app-lab


【解决方案1】:

你会注意到:["a", "b", "c"] == ["a", "b", "c"] 总是返回 false。

那是因为这是两个不同的数组。仅仅因为元素字符串匹配,数组就不一样了。

您将需要遍历元素以比较每个元素,将它们转换为可以通过简单相等进行比较的东西,或者使用具有“深度”相等的库。

JSON.stringify(["a", "b", "c"]) == JSON.stringify(["a", "b", "c"])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-05
    • 2014-09-07
    • 2014-02-17
    • 2019-01-30
    • 1970-01-01
    • 1970-01-01
    • 2020-12-29
    • 2019-08-20
    相关资源
    最近更新 更多