【问题标题】:JavaScript: Assign an unique identifier to an array and iterate over objects in the arrayJavaScript:为数组分配唯一标识符并遍历数组中的对象
【发布时间】:2019-05-27 20:19:17
【问题描述】:

我有 4 个充满对象的数组:

Array(16) [ {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, … ]
Array(27) [ {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, … ]
Array(21) [ {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, … ]
Array(16) [ {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, … ]

每个对象都包含一些我想显示给查看者的信息:

0: Object { exchange: "NYSE", quote: "JPY", price: "3923.76016", … } ​ 1: Object { exchange: "DEF", quote: "GBP", price: "3924.60972", … } ​ 2: Object { exchange: "FEG", quote: "EUR", price: "3917.31980", … } ​ 3: {…} ​​ exchange: "NEX" ​​ price: "3914.70000" ​​ quote: "USD" ​​ timestamp: "2018-12-31T07:47:11.253Z" ​​ <prototype>: Object { … }

我该怎么做 1)为数组分配一个唯一的值,即。 Array #1 是 VTX,Array #2 是 DEF,所以当我在页面上显示它时,我不需要更改股票代码(即交易所 NEX 上的 VTX 是 $100,我只需要更改交易所名称和货币/金额)

2) 遍历数组到迭代器移动到数组中下一个对象的位置,比如说,每 2-3 秒?

我正在 React 中执行此操作,并将数据传递给 props,但现在我被困在试图弄清楚这一点。

【问题讨论】:

  • 1) 将数组分配给对象的属性:{VTX: array1, DEF: array2, ...}。 2)保留一个计数器变量i,每2-3秒增加一次并访问array[i]

标签: javascript arrays reactjs javascript-objects


【解决方案1】:

1) 您可以像这样将所有数组存储在对象中:

const myArrays = [
    {
        uniqueName: 'VTX',
        infos: []
    },{
        uniqueName: 'DEF',
        infos: []
    }
]

2)你应该将索引存储在状态中,并通过componentDidMount中的setInterval改变它

componentDidMount() {
    this.timerID = setInterval(
        () => this.nextInfo(),
        1000
    );
}

【讨论】:

  • 谢谢!我能够将 ID 分配给我的数组以区分引号。对于第二部分,我还在努力……
  • 如果有帮助,请不要犹豫并接受答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-21
相关资源
最近更新 更多