【问题标题】:Why does JS concat method with foreach return empty string?为什么带有foreach的JS concat方法返回空字符串?
【发布时间】:2021-03-10 22:20:40
【问题描述】:

这里是新手,请原谅我的无知。我想知道为什么我的结果变量是一个空字符串,当我使用 forEach 和 concat 方法遍历数组时。

const concatSpeakersText = arr => {
    const speakerOneText = ''
    const speakerTwoText = ''

    arr.forEach(utterance => {
        utterance.speaker === '1' ? speakerOneText.concat(' ', utterance.text) : speakerTwoText.concat(' ', utterance.text)
    })

    console.log(speakerOneText)
    console.log(speakerTwoText)
}

【问题讨论】:

标签: javascript string-concatenation


【解决方案1】:

您需要使用String#concat 分配给变量或使用扬声器获取对象。

const concatSpeakersText = arr => {
    const speakers = { speakerOneText: '', speakerTwoText: '' };

    arr.forEach(utterance => {
        speakers[utterance.speaker === '1'
            ? 'speakerOneText'
            : 'speakerTwoText'
        ] += ' ' + utterance.text;
    });

    console.log(speakers.speakerOneText)
    console.log(speakers.speakerTwoText)
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-25
    • 1970-01-01
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 2020-08-27
    • 2016-11-23
    • 2011-05-08
    相关资源
    最近更新 更多