将函数参数中的多个值连接到数组中

时间:2014-03-25 15:07:23

标签: javascript

var items = function (selector) {
    var elements = [];
  var allDivs = elements.push(selector);
console.log(elements) // ["div"] script.js:13
                         ["img.some_class"] script.js:13
                         ["#some_id"] script.js:13
                         [".some_class"] script.js:13
                         ["input#some_id"] script.js:13
                         ["div#some_id.some_class"] script.js:13
                         ["div.some_class#some_id"] script.js:13
}

chrome中的console.log显示当前列出的值。

我如何将这些返回值分组到一个数组中?我尝试过使用连接,但是这个方法没有方括号,或者只是删除[“”]而只留下值。

1 个答案:

答案 0 :(得分:1)

var selector = [
    ["div"],
    ["img.some_class"],
    ["#some_id"],
    [".some_class"],
    ["input#some_id"],
    ["div#some_id.some_class"],
    ["div.some_class#some_id"]
];

console.log(selector.reduce(function(result, current) {
    result.push(current[0]);
    return result;
}, []));

<强>输出

[ 'div',
  'img.some_class',
  '#some_id',
  '.some_class',
  'input#some_id',
  'div#some_id.some_class',
  'div.some_class#some_id' ]