如果要使用js读取json文件,那么ajax操作是必须的了。原生ajax有点麻烦,我想你们项目一定用了什么js库,这里给个jquery的例子:
$.get('xx.json路径', function(data){alert(data) // data即为json文件内容里的json数据
}, 'json')
如果把这个文件的内容读取为纯文本,可以修改$.get的最后一个参数json为text,或者删掉这个参数,默认也是text。
//获取json,这里用的是jquery的ajax方法,只是意思意思,这里可以替换为任何ajax请求function getData(){
$.ajax({
url: "xxx.php",
success: function(jsondata){
output(jsondata)
}
})
}
//函数
function output(json){
//转换字符串为对象
var Data = eval('(' + json + ')')
var html = ''
for(var i=0i<Data.lengthi++){
//具体键值根据你返回的字符串来
html += '名字' + Data[i].name + ' 年龄' + Data[i].age
}
//插入到元素
document.getElementById('el').innerHTML = html
}
//每隔10秒执行
setTimeout(getData, 10000)
在Python中,可以使用json模块来处理json文件,并使用json.dumps()函数将json文件转换成字符串,然后再将字符串写入js文件中。下面是一个将json文件转换成js文件的示例代码:
import json
# 读取json文件
with open('data.json', 'r') as f:
data = json.load(f)
# 将json文件转换成字符串
str_data = json.dumps(data)
# 将字符串写入js文件中
with open('data.js', 'w') as f:
f.write(f'var data = {str_data}')
在上面的代码中,首先读取json文件,然后使用json.dumps()函数将json文件转换成字符串,最后将字符串写入js文件中。
注意,在将json文件转换成js文件时,需要将字符串转换成js变量的形式,如"var data = {str_data}"。这样,就可以在js文件中使用data变量来访问原来的json数据了。