【问题标题】:Test for array containing a single empty string in JavaScript在 JavaScript 中测试包含单个空字符串的数组
【发布时间】:2014-10-13 17:38:00
【问题描述】:

我正在从 JavaScript 中的函数返回一个数组,我需要能够知道它何时只包含一个空字符串。当我将该值打印到控制台时,它会返回:

[""]

如果我执行以下操作会出错:

if(myVar == [""]){
    // do something
}

如何测试该变量中的该值? jQuery 答案和纯 JavaScript 一样完全可以接受。

【问题讨论】:

  • 在执行myVar == [""] 时不应该出现错误。什么错误?

标签: javascript jquery arrays json comparison


【解决方案1】:

我会使用:

if( myVar instanceof Array && myVar.length === 1 && myVar[0] === '' ) {
// ....
}

【讨论】:

  • typeof myVar 将返回“object”,所以这不起作用。请改用myVar instanceof Array ;)
【解决方案2】:
if (myVar.length == 1 && myVar[0] == ""){   
}

【讨论】:

  • 如果myVar['',1,2,3] 会怎样
  • 已编辑,现在如果数组只包含字符串,它就可以工作。
  • 你应该把==改成===
猜你喜欢
  • 2020-11-03
  • 2012-02-18
  • 1970-01-01
  • 1970-01-01
  • 2019-10-25
  • 2017-12-29
  • 1970-01-01
  • 2018-11-20
  • 2012-02-25
相关资源
最近更新 更多