多维数组JavaScript挑战

owfi6suc  于 2023-04-08  发布在  Java
关注(0)|答案(1)|浏览(99)

我在一个网站上做了一个挑战,如下所示:
完成函数createToDoList,使返回的多维数组至少包含三个作为嵌套数组列出的任务。
步骤1:创建任务子数组。
每个嵌套数组的第一个元素应该是描述任务的字符串。第二个元素应该是一个数字,表示该任务将花费多长时间(分钟)。
步骤2:将数组添加到toDoList。
选择一个合适的数组方法,允许您添加到toDoList。
以下是我到目前为止所做的:

function createToDoList() {
    const toDoList = [];
    // Do not alter any code above here
    const tasks = [
        ['task 1', 45],
        ['task 2', 87],
        ['task 3', 83]
    ];

    toDoList.push(tasks);
    // Do not alter any code below here
    return toDoList;
}

很明显,我不明白这里的一些东西,我不知道如何将数组推入变量(如果这就是它问我的......),我真的不明白。
谢谢

rseugnpd

rseugnpd1#

你已经在tasks中有了你想要的东西,所以你可以返回它。由于不允许更改代码的某些部分,因此可以使用数组是Iterable的事实,并使用spread operator ...tasks中的所有元素推入toDoList

function createToDoList() {
    const toDoList = [];
    // Do not alter any code above here
    const tasks = [
        ['task 1', 45],
        ['task 2', 87],
        ['task 3', 83]
    ];

    toDoList.push(...tasks);
    // Do not alter any code below here
    return toDoList;
}

console.log(createToDoList())

也可以使用forEach()

function createToDoList() {
    const toDoList = [];
    // Do not alter any code above here
    const tasks = [
        ['task 1', 45],
        ['task 2', 87],
        ['task 3', 83]
    ];

    tasks.forEach(task => toDoList.push(task));
    // Do not alter any code below here
    return toDoList;
}

console.log(createToDoList())

相关问题