方括号示例

Example of Square Brackets

我读了这个 post 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 语句吗?

let [translations] = await translate.translate(text, target);

函数 translate.translate returns(一个承诺环绕)一个数组。以上相当于

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

现在,第二行:

translations = Array.isArray(translations) ? translations : [translations];

读取:"if translations is already an array, do nothing with it, if it's not, make an 1-element array out of it"。所以,此时:["cat", "dog"]保持不变,但"cat"变为["cat"].