微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

一个充满零的数组

如何解决一个充满零的数组

我正在用 JavaScript 编写一个程序,你输入一个数字 n,它返回一个数组 M,它是一个长度为 'n' 的列表,列表中的每个元素都是一个不同的列表 { {1}} 也是长度 ele 并且每个元素都为零。这是我的功能

n

我的问题是无论我如何尝试更改 var zeros=function(n){ var M=[]; var ele=[]; for (var q=0; q<n; q++){ ele.push[q]=0; } for (var p=0; p<n; p++){ M.push[p]=ele; } return M; }; 始终保持未定义状态。谁能告诉我为什么会发生这种情况以及如何解决它?

解决方法

你不能像这样使用 Array.push[x] 推送。如果您对数组使用 push,它总是将该项目放在数组的末尾 (https://www.w3schools.com/jsref/jsref_push.asp)。所以你可以使用:

ele.push(0);

ele[q] = 0

,
  1. create a non sparse Array of custom length
  2. map 每个数组项(未定义的值)转化为

function squareMatrix(n,value) {
  return Array

    // creates a non sparse,thus iterable,array 
    // which features n-times the undefined value.
    .from({ length: n })

    // thus,one can map over each item.
    .map((item,idx) =>

      // creates a sparse array of custom length `n` which
      // immediately after gets filled with the custom `value`.
      Array(n).fill(value)
    );
}

console.log(
  'squareMatrix(2,0) ...',squareMatrix(2,0)
);
console.log(
  "squareMatrix(3,'??')",squareMatrix(3,'??')
);
.as-console-wrapper { min-height: 100%!important; top: 0; }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。