【问题标题】:How to read JSON value pair in a table如何读取表中的 JSON 值对
【发布时间】:2020-01-27 09:27:05
【问题描述】:

我在下面有一个这样的 JSON 文件

 {
    "timestamp": 1546387198,
    "base": "USD",
    "rates": {
      "AED": 3.673105,
      "AFN": 75.615,
      "ALL": 107.726773 
      }
  }

我想以表格的形式读取上面的JSON。

时间戳 |基地 |货币到 |外汇汇率

1546387198 |美元 |自动除颤器 | 3.673105

1546387198 |美元 | AFN | 75.615

1546387198 |美元 |全部 | 107.726773

我应该如何将 rate 对象读取为一组值? 我正在使用 Azure 数据工厂。请建议我如何从 Json 中检索这种形式的数据。

【问题讨论】:

  • 到目前为止你有什么?
  • 你有简单的时间戳和基础。只需要循环速率,其中 key 将打印 AED/AFN/ALL 而 value 将打印 3.6731/75.615/107.72。虽然如果你能分享你到目前为止已经尝试过的东西会更好

标签: arrays json


【解决方案1】:

这是一种创建表格的方法:

let jso = {
    "timestamp": 1546387198,
    "base": "USD",
    "rates": {
      "AED": 3.673105,
      "AFN": 75.615,
      "ALL": 107.726773 
      }
  }



  function tableCreate() {
  let tbl = document.getElementsByTagName('tbody')[0];
  let values = Object.values(jso.rates);
  let keys = Object.keys(jso.rates)

  for (let i = 0; i < values.length; i++) {
	let tr = document.createElement('tr');
	let td1 = document.createElement('td');
	let td2 = document.createElement('td');
	let td3 = document.createElement('td');
	let td4 = document.createElement('td');

	td1.appendChild(document.createTextNode(jso.timestamp));
	td2.appendChild(document.createTextNode(jso.base));
	td3.appendChild(document.createTextNode(keys[i]));
	td4.appendChild(document.createTextNode(values[i]));

	tr.appendChild(td1)
	tr.appendChild(td2)
	tr.appendChild(td3)
	tr.appendChild(td4)
  	tbl.appendChild(tr);
		}
    }



tableCreate();
th, td {
	padding: 10px;
}
	<table>
		<tbody>
		<tr>
		  <th>Timestamp</th>
		  <th>Base</th>
		  <th>CurrencyTo</th>
		  <th>FXRate</th>
		</tr>
		</tbody>
	  </table>

	

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    • 1970-01-01
    • 2020-10-31
    • 2020-01-27
    • 2020-11-26
    • 2022-12-14
    • 2013-03-06
    相关资源
    最近更新 更多