基于传入值构建数组

时间:2017-02-02 05:45:01

标签: javascript arrays array-push

我正在处理一个函数,我检查传入的值,然后将其添加到数组中。我所拥有的不起作用,我只是得到一个空数组:

let category = 'client';

function builtArray() {
  let catArray = [];
  if (category === 'client') {
    catArray.push('client');
  }
  console.log(catArray);
}

我错过了什么?

2 个答案:

答案 0 :(得分:1)

如果我理解你的问题,

let category = 'client';

function builtArray() {
  let catArray = [];
  if (category === 'client') {
    catArray.push('client');
  }
  console.log(catArray);
}

应该是

let category = 'client';

function builtArray(cat) {
  let catArray = [];
  if (cat === 'client') {
    catArray.push(cat);
  }
  console.log(catArray); // => ['client']
}

builtArray(category);
  1. 您必须“调用”该函数才能运行。这意味着用()调用它,这就是我最后所做的。

  2. 您将“category”作为参数传递给函数,函数重命名您传入的内容(如cat),然后检查该变量是否等于字符串client,如果是,则将其插入catArray

答案 1 :(得分:1)

我想你希望在函数之后保留数组,在这种情况下将它声明在函数之外。

let category = 'client';
let catArray = [];


function builtArray(str) {

    if (category === 'client') //this will only allow 'client' to be inserted
    {
    catArray.push(str);
  }
  console.log(catArray);
}

然后根据需要打电话:

builtArray('client');
相关问题