QML ve JSON: bir değişkende belirtilen bir alana erişim

0

Soru

Qml kodumun içindeki bir Json dizesine erişmem gerekiyor, şimdi alan biliniyorsa kolaydır.

Verilen {"c1":320, "c2":256, "c3":128}

Ben yapabilirim

function getC1(jsonstr)
{
   const obj = JSON.parse(jsonstr);
   return obj.c1;
}

Ama ya hangi alana erişeceğimi ve bir değişkene sahip olacağımı önceden bilmiyorsam.

obj["c1"] veya obj[değişken] sözdizimleri çalışmıyor gibi. Bir yolu var mı?

javascript json qml qt
2021-10-26 07:31:22
1

En iyi cevabı

0

Denediğin diğer yöntemlerin işe yaramadığı iddiana katılmıyorum. İşte yaptığım şey:

    property string json: '{"c1":320, "c2":256, "c3":128}'

    function getC1(jsonstr)
    {
        const obj = JSON.parse(jsonstr);
        const key = "c1";
        console.log(obj.c1);
        console.log(obj["c1"]);
        console.log(obj[key]);
    }

    Component.onCompleted:
    {
        getC1(json);
    }

Ve işte çıktı:

qml: 320
qml: 320
qml: 320

Böylece tüm 3 yöntem istenen çıktıyı üretir.

2021-10-26 14:01:41

Diğer dillerde

Bu sayfa diğer dillerde

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................