尝试测试空字符串时出现语法错误

时间:2014-04-23 01:58:57

标签: javascript string

在Javascript中,我正在尝试执行一项简单的测试任务并返回两个单词中最长的单词。如果单词是空的,那么返回应该说"空字符串"。使用orifif语句测试空字符串时,我不断收到语法错误。我正在使用(!word1)和(!word2),因为我的理解是在Javascript中它是一个布尔语句,应该是false。请告诉我哪里出错了:

function longest(word1, word2) {

if (word1.length >= word2.length) {

    return (word1);

} else {

    return (word2);

} else if (!word1) || (!word2) {

    return "an empty string";

}

}

console.log(longest('hi'));

3 个答案:

答案 0 :(得分:2)

if条件应该被正好一对括号包围。

else if (!word1) || (!word2)更改为else if (!word1 || !word2)

答案 1 :(得分:0)

如果错误的方式,你得到了别的东西。下面是你问题的完整代码。

function longest(word1, word2) {
if ((!word1) || (!word2)) {


    alert ("an empty string");

} else if (word1.length >= word2.length) {

    alert (word1);

}else{

   alert (word2);        

}

}

longest('hi');

答案 2 :(得分:0)

您的“else”子句应该是if语句中的最后一个子句:

function longest(word1, word2) {

if (word1.length >= word2.length) {

    return (word1);

 } else if (!word1 || !word2) {

    return "an empty string";

} else {

    return (word2);



}

console.log(longest('hi'));