方括号示例

时间:2019-04-17 19:10:18

标签: javascript arrays brackets

我阅读了这篇文章Use of [square brackets] around JavaScript variables,但是我并没有真正知道为什么要使用它。 这是我想要理解的代码:

let [translations] = await translate.translate(text, target);
translations = Array.isArray(translations) ? translations : [translations];

translations.forEach((translation, i) => {
    console.log(`${text[i]} => (${target}) ${translation}`);

您能帮我解释一下为什么第一行中的括号以及为什么第二行中的if语句吗?

1 个答案:

答案 0 :(得分:1)

                 domains.stream()
                .filter(domain -> domain.getSoftwares().contains(request.getSoftwares())
                        && domain.getHardwares().stream().anyMatch(request.getHardware()))
                .collect(Collectors.toList());

函数let [translations] = await translate.translate(text, target); 返回(一个包装好的承诺)数组。以上等同于

translate.translate

现在,第二行:

let translationsArray = await translate.translate(text, target);
let foo = translationsArray[0];

读取:“如果translations = Array.isArray(translations) ? translations : [translations]; 已经是一个数组,则不对其进行任何处理,如果不是,则从中创建一个1元素的数组。”因此,此时:translations保持不变,但是["cat", "dog"]变成"cat"