JavaScript 增量数组 React

Posted

技术标签:

【中文标题】JavaScript 增量数组 React【英文标题】:JavaScript Incremental Array React 【发布时间】:2018-10-30 03:51:14 【问题描述】:

嗨,这是我的 json 值

constructor() 
  super();
  this.exportpdf = this.exportpdf.bind(this);
  this.state = 
    sales: [
      
        customStudentId: "2064517",
        studentRoll: 26,
        studentName: "Md. Faiaz Jakir ",
        stdCtExamMarks: [
          
            viewSerial: 1,
            subjectName: "Bangla ",
            subjectFullMark: 25,
            obtainedMark: 0,
            highestMarks: 25
          
        ]
      ,
      
        customStudentId: "2065817",
        studentRoll: 27,
        studentName: "Miraj  Bin Atik ",
        stdCtExamMarks: [
          
            viewSerial: 1,
            subjectName: "English ",
            subjectFullMark: 25,
            obtainedMark: 0,
            highestMarks: 25
          
        ]
      
    ]
  ;

这里我使用的是 primereact 数据表。这是我用来在表格中显示我的数据的代码>

 <DataTable value=this.state.sales[0].stdCtExamMarks>
        <Column field="subjectName" header="Subject" />
        <Column field="subjectFullMark" header="Full Mark" />
        <Column field="obtainedMark" header="Obtainedn Mark" />
        <Column field="highestMarks" header="Highest Mark" />
    </DataTable>

我为this.state.sales[0].stdCtExamMarks 得到的值是 Image Here

但我需要来自 json 数据的两个(等等)stdCtExamMarks 值。我该怎么做?

【问题讨论】:

【参考方案1】:

但我需要来自 json 数据的两个(等等)stdCtExamMarks 值。 我该怎么做?

所以你需要从数组中的每个对象中提取stdCtExamMarks?您可以使用map 来执行此操作。它将返回一个映射对象数组:

<DataTable value=this.state.sales.map(sale => sale.stdCtExamMarks)>

【讨论】:

控制台日志的输出是(2) [Array(1), Array(1)],并且不会将任何值推送到表中 当我将代码更改为&lt;DataTable value=this.state.sales.map(sales =&gt; sales.stdCtExamMarks[0])&gt;时它工作了 哦,我没注意到它的 na 数组,很好!

以上是关于JavaScript 增量数组 React的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript实现希尔排序及优化

JavaScript希尔排序

JavaScript javascript输入框增量

Javascript - 使用增量时间的游戏循环

Javascript增量(++)警告[重复]

JavaScript 增量搜索v1.3