方括号示例
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"]
.
我读了这个 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"]
.