杂货清单添加物品

时间:2016-08-29 12:18:54

标签: javascript arrays

需要编写一个带有两个参数的函数:一个数组 - 一个杂货列表和一个项目。

如果列表中尚未包含单个项目,则新项目将添加到列表中。

函数返回Grocery列表

这是我的尝试:

var addItem = function(array, a) {    
    if (array.indexOf(a) = -1) {
        array.push(a);
        return array;
    }
    else if (array.indexOf(a) != -1) {
        return array;
    }
};

1 个答案:

答案 0 :(得分:0)

你做的基本上是正确的,但在=条件下错过了一个if。单个等号是声明,而不是支票。而且您不需要else if,只需使用else。或者甚至更好,删除整个else部分,因为它是多余的,无论如何都会返回。

var addItem = function(array, a) {    
    if (array.indexOf(a) == -1) { // missing '=' here
        array.push(a);
    }

    return array;
};

工作示例:

var arr = [];
var addItem = function(array, a) {
    if (array.indexOf(a) == -1) { // missing '=' here
        array.push(a);
    }

    return array;
};

addItem(arr, "test 1");
addItem(arr, "test 1");
addItem(arr, "test 2");

console.log(arr);