如何用js取值json的数据

JavaScript020

如何用js取值json的数据,第1张

通过 JSON.parse 将你的 JsonInfo 的字符串类型的变量转为 js 对象:var jsonObj = JSON.parse(jsonStr)

看到 json 字符串里的中括号了没有?这个对象名为 sites 的 key 对应的 value 是一个数组,也就是 sites[0],sites[1]...你可以理解为 jsonObj 的 sites 就是一个数组名,所以也就具备了 length 这个属性。

接着可以循环这个数组,找出数组中的对象的 title 属性为"数量"的那个数组对象即可。

别说什么就没有看懂网上的资料,不知道你认真看了没有。认真看不可能看不懂的,一遍不行看两遍,两遍不行看三遍。就是把一个普通的对象换成了数组,就不认识了吗。

var jsonStr = '{"sites":   

  {"title":"数量",  "ReadOnly":"true"}, 

  {"title":"单位",  "ReadOnly":"false"}

 ]          }'

function getReadOnly() {

    var jsonObj = JSON.parse(jsonStr)

    var amountReadOnly

    var sitesLength = jsonObj.sites.length

    for (var i = 0 i < sitesLength i++) {

        if (jsonObj.sites[i].title === "数量") {

            amountReadOnly = jsonObj.sites[i].ReadOnly

            break

        }

    }

    return amountReadOnly

}

getReadOnly()

通过循环就可以将json里的值全部获取了;

var json = {'name':'xxxxx', 'age':27}

for(var name in json){

document.write(json[name])

}

需要准备的材料分别有:电脑、html编辑器、浏览器。

1、首先,打开html编辑器,新建html文件,例如:index.html。

2、在index.html中的<script>标签,输入js代码:var json = {'name': 'Alice', 'age': 16}document.body.innerText = json.name。

3、浏览器运行index.html页面,此时json的对象的name属性被成功取到并打印了出来。