在QML中解析JSON

Ste*_*nov 7 javascript qt parsing json qml

相关的Qt doc应该是这个.但它没有提到QML.然而,在网上的许多地方,我发现JSON.parse了QML JS中的函数的使用.有这样的功能,我该如何使用它?

我只是想要一个文档的链接,但这被认为是偏离主题的.

DuK*_*0mE 17

在QML中解析JSON与在Javascript中解析JSON没什么不同,因为QML提供了一个基于ECMAScript(链接)的环境,特别是对QML进行了一些修改.

所以你可以使用内置JSON.parse()功能.以下示例在QML中是可能的:

import QtQuick 2.7
import QtQuick.Window 2.2

Window {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    Component.onCompleted: {
        var JsonString = '{"a":"A whatever, run","b":"B fore something happens"}';
        var JsonObject= JSON.parse(JsonString);

        //retrieve values from JSON again
        var aString = JsonObject.a;
        var bString = JsonObject.b;

        console.log(aString);
        console.log(bString);
    }
}
Run Code Online (Sandbox Code Playgroud)

这就是为什么Qt文档没有说明这个特定函数的原因:

标准ECMAScript内置函数未在QML文档中明确记录.有关其使用的更多信息,请参阅ECMA-262第5版标准或许多在线JavaScript参考和教程网站之一,例如W3Schools JavaScript参考(JavaScript对象参考部分)

资源