初学者javascript-两者都是“;如果;及;否则";执行条件?
我是JavaScript的初学者。据我所知,如果不满足初学者javascript-两者都是“;如果;及;否则";执行条件?,javascript,Javascript,我是JavaScript的初学者。据我所知,如果不满足if条件,将执行else条件;然而,在我的代码中,我认为这两个条件都是执行的,因为末尾有一个点,并且单词之间有空格。实际执行的是哪个条件 var result1 = createSentence(['I', 'am', 'worth', 'it']); console.log('should log "I am worth it.":', result1); function createSentence(words)
if
条件,将执行else
条件;然而,在我的代码中,我认为这两个条件都是执行的,因为末尾有一个点,并且单词之间有空格。实际执行的是哪个条件
var result1 = createSentence(['I', 'am', 'worth', 'it']);
console.log('should log "I am worth it.":', result1);
function createSentence(words) {
var sentence = "";
for (var i = 0; i < words.length; i++) {
if (i === words.length - 1){
sentence += words[i] + '.';
} else {
sentence += words[i] + ' '
}
}
return sentence
}
var result1=create句子(['I','am','worth','it']);
log('应该记录“我值得这么做。”:',result1);
功能句子(单词){
var句子=”;
for(var i=0;i
如果和else条件仅在“非此即彼”的基础上执行,则您是正确的。if和else条件不能在同一个迭代中执行,也不能在一个函数调用中执行
但是,在您共享的代码中,有一个for循环正在迭代“words”数组,这可能是您感到困惑的原因
for循环实质上调用循环中的任何内容n次,直到不满足结束条件为止。在这种情况下,只要单词数组在当前元素之后还有更多的元素就可以了
因此,如果单词数组有2个单词,for循环将调用内部if和else语句块2次:
words=['Hello','world']
var语句=“”;
for(var i=0;i 控制台日志(句子)代码>您的代码处于循环中。它可能会对if
语句进行多次评估。请提供一个如何调用function@Dai-这个条件只有一次是正确的,顺便说一句,你要做的事情可以用一条语句来完成:returnwords.join(“”)+“.
@JaromandaX我怀疑OP传递的是字符串
值,而不是字符串[]
值-或者单词
的元素已经包含点和空格。谢谢!如果这有帮助,你可能应该选择它作为答案,以便结束这个问题,这样它将在将来帮助其他人。