ES6:使用模板文字创建字符串 - Freecodecamp

我尝试解决以下问题,通过了 4 个条件中的 3 个。我在下面的代码中找不到更多错误。但它仍然说“failuresList应该是一个包含结果失败消息的数组。”

链接: https:

//www.freecodecamp.org/learn/javascript-algorithms-and-data-structs/es6/create-strings-using-template-literals


问题:

使用带有反引号的模板文字语法来创建列表元素 (li) 字符串的数组。每个列表元素的文本应该是结果对象上的 failure 属性中的数组元素之一,并且具有值为 text-warning 的类属性。makeList 函数应返回列表项字符串数组。


使用迭代器方法(任何类型的循环)来获得所需的输出


[

  '<li class="text-warning">no-var</li>',

  '<li class="text-warning">var-on-top</li>',

  '<li class="text-warning">linebreak</li>'

]

  1. 未通过:failuresList 应该是包含结果失败消息的数组。

  2. 通过:failuresList 应等于指定的输出。

  3. 通过:应使用模板字符串和表达式插值。

  4. 通过:应该使用迭代器。

下面是我到目前为止的代码:

const result = {

  success: ["max-length", "no-amd", "prefer-arrow-functions"],

  failure: ["no-var", "var-on-top", "linebreak"],

  skipped: ["id-blacklist", "no-dup-keys"]

};


function makeList(arr) {

  "use strict";

 

 

  // Only change code below this line

  const resultDisplayArray = (arr) =>{

    let failure = [];

   for (let element of arr) {

      failure.push(`<li class="text-warning">${element}</li>`);

    }

  

    return failure;

    

  };

  // Only change code above this line


  return resultDisplayArray(arr);

}


const resultDisplayArray = makeList(result.failure);

console.log(resultDisplayArray);


德玛西亚99
浏览 46回答 4
4回答

冉冉说

因此,我将以两种方式提及这些问题:如何修复代码,我将建议一种干净的方法来解决问题。该问题与代码的正确性无关,但事实上,您更改了正在检查的变量的名称。您应该将变量“failuresList”保留在全局范围内,以作为保存结果数组的变量。但相反,您将其更改为“resultDisplayArray”。复制粘贴您的代码并仅更改名称,导致所有测试都通过”&nbsp;(我指的是代码中最后一行之前的行)您不应该使用内部函数“resultDisplayArray”来包装数组创建。这就是“makeList”的用途,内部函数是多余的,因此不应该存在。我本来就是这样做的:const result = {&nbsp; success: ["max-length", "no-amd", "prefer-arrow-functions"],&nbsp; failure: ["no-var", "var-on-top", "linebreak"],&nbsp; skipped: ["no-extra-semi", "no-dup-keys"]};function makeList(arr) {&nbsp; // Only change code below this line&nbsp; const failureItems = arr.map(curr => `<li class="text-warning">${curr}</li>`);&nbsp; // Only change code above this line&nbsp; return failureItems;}const failuresList = makeList(result.failure);console.log(failuresList);

慕工程0101907

const result = {&nbsp; success: ["max-length", "no-amd", "prefer-arrow-functions"],&nbsp; failure: ["no-var", "var-on-top", "linebreak"],&nbsp; skipped: ["no-extra-semi", "no-dup-keys"]};function makeList(arr) {&nbsp; // Only change code below this line&nbsp; const failureItems = [];for (let i = 0; i < result.failure.length; i++){&nbsp; failureItems.push(`<li class="text-warning">${result.failure[i]}</li>`);}&nbsp; // Only change code above this line&nbsp; return failureItems;}const failuresList = makeList(result.failure);

温温酱

我刚刚开始了漫长的 JavaScript 学习之旅,但据我了解,我需要运用我目前所掌握的知识。const result = {&nbsp; success: ["max-length", "no-amd", "prefer-arrow-functions"],&nbsp; failure: ["no-var", "var-on-top", "linebreak"],&nbsp; skipped: ["no-extra-semi", "no-dup-keys"]};function makeList(arr) {&nbsp; // Only change code below this line&nbsp; const failureItems = [];&nbsp; for ( let i = 0; i < arr.length; i++) {&nbsp; &nbsp; failureItems.push(`<li class="text-warning">${arr[i]}</li>`)&nbsp; }&nbsp; // Only change code above this line&nbsp; return failureItems;}const failuresList = makeList(result.failure);console.log(makeList(result.failure))

手掌心

您可以尝试下面这个简单的解决方案:const result = {&nbsp; &nbsp; &nbsp; &nbsp; success: ["max-length", "no-amd", "prefer-arrow-functions"],&nbsp; &nbsp; &nbsp; &nbsp; failure: ["no-var", "var-on-top", "linebreak"],&nbsp; &nbsp; &nbsp; &nbsp; skipped: ["no-extra-semi", "no-dup-keys"]&nbsp; &nbsp; &nbsp; };&nbsp; &nbsp; &nbsp; function makeList(arr) {&nbsp; &nbsp; &nbsp; &nbsp; // Only change code below this line&nbsp; &nbsp; &nbsp; &nbsp; const failureItems = [];&nbsp; &nbsp; &nbsp; &nbsp; for (i=0; i < result.failure.length; i++) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; failureItems[i] = `<li class="text-warning">${result.failure[i]}</li>`;&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; // Only change code above this line&nbsp; &nbsp; &nbsp; &nbsp; return failureItems;&nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; const failuresList = makeList(result.failure);&nbsp; &nbsp; &nbsp; console.log(failuresList);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript