json如下:
{
"code": "0",
"data": [
[
"1657245600000",
"0.77"
],
[
"1657245300000",
"0.76"
],
[
"1657245000000",
"0.76"
],
[
"1657244700000",
"0.75"
],
[
"1657244400000",
"0.74"
],
[
"1657244100000",
"0.75"
]
]
}
循环解析出里面数据。
谢谢!
forEach?
let data = {
"code": "0",
"data": [
[
"1657245600000",
"0.77"
],
[
"1657245300000",
"0.76"
],
[
"1657245000000",
"0.76"
],
[
"1657244700000",
"0.75"
],
[
"1657244400000",
"0.74"
],
[
"1657244100000",
"0.75"
]
]
}
data.data.forEach(item=>{
console.log(item)
})
你想怎么解析,格式又是怎样
data = {
"code": "0",
"data": [
[
"1657245600000",
"0.77"
],
[
"1657245300000",
"0.76"
],
[
"1657245000000",
"0.76"
],
[
"1657244700000",
"0.75"
],
[
"1657244400000",
"0.74"
],
[
"1657244100000",
"0.75"
]
]
}
for(let d in data){
if(typeof(data[d])=='string'){
console.log(d,':',data[d]);
}else{
let lst = data[d];
for(let l in lst){
console.log(d,l,lst[l][0],lst[l][1])
}
}
}
<script>
$(function () {
var tree = document.getElementById("duokongren");
var day=0;
var getData = function(){
$.getJSON('https://api.btc126.vip/okexcn.php?from=duokongren&day='+day, function (data) {
var u = [];
data.data.forEach(item=>{
//console.log(item)
$time = parseFloat(item[0]);
$price = parseFloat(item[1]);
u.push([$time,$price]);
})
console.log(u);
Highcharts.setOptions({global: {useUTC: false}});
var dateTimeLabelFormatsData = {
millisecond: '%H:%M',
second: '%H:%M',
minute: '%H:%M',
hour: '%H:%M',
day: '%H:%M',
week: '%H:%M',
month: '%H:%M',
year: '%H:%M'
}
if(day === '0'){
dateTimeLabelFormatsData = {
minute: '%H:%M',
}
} else if(day === '1') {
dateTimeLabelFormatsData = {
hour: '%H:%M',
}
} else if(day === '2') {
dateTimeLabelFormatsData = {
day: '%m-%d',
}
}
$('#duokongren').highcharts({
chart: {},
colors: ['#30AD65', '#E35E5E'],
credits: {enabled: false},
title: {text: ''},
xAxis: {
type: 'datetime',
dateTimeLabelFormats: dateTimeLabelFormatsData
},
tooltip: {
shared: false, //是否共享提示,也就是X一样的所有点都显示出来
useHTML: true, //是否使用HTML编辑提示信息
headerFormat: '{point.key} <br/>',
pointFormat: '{series.name}:' + '<b>{point.y}</b>',
footerFormat: ''
},
yAxis: {
title: {text: ''},
labels: {
enabled: true,
formatter: function() {
return this.value;
}
}
},
plotOptions: {
series: {
lineWidth: 1.5,
marker: {enabled: false}
}
},
legend: {enabled: false},
series: [{
type: 'line',
name: '多空比值',
data: u
}]
});
});
}
$('#dayduokongren li').each(function(){
$(this).click(function(){
day = $(this).attr("day");
getData();
})
})
getData();
});
</script>
highcharts显示出来后 提示上的时间不对了。
很标准的数据啊,你直接用JSON就可以进行解析的。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let response = {
"code": "0",
"data": [
[
"1657245600000",
"0.77"
],
[
"1657245300000",
"0.76"
],
[
"1657245000000",
"0.76"
],
[
"1657244700000",
"0.75"
],
[
"1657244400000",
"0.74"
],
[
"1657244100000",
"0.75"
]
]
};
function Time(val) {
let data = new Date(val * 1);
let year = data.getFullYear();
let month = data.getMonth();
let day = data.getDate();
let hour = data.getHours();
let minute = data.getMinutes();
let seconds = data.getSeconds();
return [hour, minute].map(fn).join(':');
function fn(val1) {
let val = val1.toString();
return val[1] ? val1.toString() : '0' + val1
}
};
let X = [], data = [];
response.data.forEach((item, index) => {
X.push(Time(item[0]))
data.push(item[1])
})
console.log(X, data)
</script>
</body>
</html>
var str=""
arr.data.forEach((v,i)=>{
console.log(v.join(":"))
})