xlyyyds 2022-10-25 21:13 采纳率: 0%
浏览 6

在JS中,使用new创建的数组为什么是伪数组?

在做一个小项目时,遇到的问题:

当我用new去实例化数组时,实例化的数组是伪数组,因此无法进行map处理

错误代码
// 基础数据
      const data = [
        { name: '鼠', color: '#ffff00' },
        { name: '牛', color: '#ffcc00' },
        { name: '虎', color: '#ff9900' },
        { name: '兔', color: '#ff0000' },
        { name: '龙', color: '#cccc00' },
        { name: '蛇', color: '#999900' },
        { name: '马', color: '#66ff00' },
        { name: '羊', color: '#33ffff' },
        { name: '猴', color: '#990099' },
        { name: '鸡', color: '#cc66ff' },
        { name: '狗', color: '#33ff99' },
        { name: '猪', color: '#ff2344' }
      ]
// 渲染数据
const renderData = new Array(3* 6)
        .map((i) => {
          return data.map( i => ({ ...i }))
        })
console.log(renderData)
错误执行结果

img

正确代码
// 渲染数据
const renderData = Array.from(new Array(3* 6))
        .map((i) => {
          return data.map( i => ({ ...i }))
        })
console.log(renderData)
正确执行结果

img

  • 写回答

1条回答 默认 最新

  • 人间小美味695 2022-10-26 06:11
    关注
    评论

报告相同问题?

问题事件

  • 创建了问题 10月25日

悬赏问题

  • ¥15 关于#c++#的问题:义父大人求解答
  • ¥15 VESTA绘图原子颜色显示异常
  • ¥15 天翼云搭建多ip l2tp
  • ¥30 matlab求解刃位错方程
  • ¥15 python实现CAD识图
  • ¥15 如何实现在renpy中创建并应用不同大小尺寸对话框?
  • ¥15 table表格有一列是固定列 滑动到最下面时 固定的那一列有几行没显示出来
  • ¥20 单细胞数据注释时报错
  • ¥15 vscode编译ros找不到头文件,cmake.list文件出问题,如何解决?(语言-c++|操作系统-linux)
  • ¥15 通过AT指令控制esp8266发送信息