javascript - 在不使用 .flat() 的情况下展平数组;

标签 javascript

如何在不使用 flat() 的情况下展平数组。 1级?
到目前为止我有这个

function flatten(array) {
  let flattened = [];
  for (let i = 0; i < array.length; i++) {
    const current = array[i];
    for (let j = 0; i < current.length; j++) {
      flattened.push(current[j])
    }
  }
  return flattened
}

console.log(flatten([['foo', 'bar'], ['baz', 'qux']]));
// -> ["foo", "bar", "baz", "qux"]
flatten([[1], [2], 3, 4, [5]]);
// -> [1, 2, 3, 4, 5]
flatten([false, [true, [false]], [true]]);
// -> [false, true, [false], true]
flatten([]);
// -> []
它破坏了我的内存

最佳答案

我希望这有帮助

var twoDimension = [[1], [2], 3, 4, [5]];

var plano = twoDimension.reduce((acc, el) => acc.concat(el), []);

console.log(plano);

关于javascript - 在不使用 .flat() 的情况下展平数组;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62744911/

相关文章:

javascript - 根据在输入框中输入相同的数字来阻止表单提交

javascript - 动态更新 MapView.UrlTile 组件的 urlTemplate 属性

javascript - 串扰+传单+plotly-非持久选择

javascript - 脚本未在 IE 的 IFrame 中运行 - FF 正常

javascript - 是否有跨浏览器的 jQuery contentEditable 库?

javascript - 无法通过 JavaScript 从输入中获取值

javascript - 如何给输入框赋值?使用 getElementById

javascript - 如何在调用 this._super 之前捕获 Promise? JavaScript

javascript - 字符串替换正则表达式,开头的空格

javascript - 使用 JavaScript : prevent application inside DIV 在运行时编辑 CSS(更改选择器)