我的目标是确定名为name
的字段是否为空
我的代码返回此错误:
“对象不是函数”。
这已得到解决,因为我最初在(name)
声明中使用了[name]
而非if
function notEmptyOrNull() {
var name1 = "Sherlock";
var name2 = "Watson";
var name3 = "";
var namesArray= ["Ben", "Lucy", "Watson", "Sherlock"];
if (namesArray[name1] !== null) { // resolved error
console.log(name1);
return true;
}
return false;
}
notEmptyOrNull();
更新了代码:
解决错误的if (namesArray(name)
到if (namesArray[name]
。
但是,当我测试name3
时,我已将其更改为“空字符串”=“”
我该怎么做?
在Chrome开发工具中,我希望每个输出都显示为true或false。
我还想输出每个字段的数据。
同样,这很简单,但我仍在整理它。
我知道我缺少完成此操作的部分代码。
答案 0 :(得分:1)
如果namesArray.indexOf(name1) > -1
这样你就不检查null,你正在检查数组中是否存在值
答案 1 :(得分:0)
你错误地调用了数组值。 “()”用于调用函数,从数组中获取元素,你必须使用“[]”
像这样:
if (namesArray[name1] !== null) {
Pd积。事实上,我认为你想要的是找到名称是否在数组中,在这种情况下你应该使用这个方法:
if (namesArray.indexOf(name1) !== -1)
您可以查看文档here
答案 2 :(得分:0)
替换:
if (namesArray(name1) !== null) { ...
使用:
if (name1.indexOf(namesArray) !== -1 ) { ...
如果元素不能在数组中输入,那么Array.indexOf()将返回-1,否则,数组内元素的索引(其中0表示第一个元素)。