QML e JSON: o acesso a um campo especificado em uma variável

0

Pergunta

Eu preciso de acesso a uma seqüência de caracteres Json dentro do meu software livre de código, agora, se o campo é conhecido é fácil.

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

Eu posso

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

Mas e se eu não souber com antecedência que o campo para o acesso e tê-lo em uma variável.

como obj["c1"] ou obj[variável] sintaxes não estão funcionando. Existe uma maneira?

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

Melhor resposta

0

Eu não concordo com a sua afirmação de que os outros métodos que você tentou não funcionam. Aqui está o que eu fiz:

    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);
    }

E aqui está o resultado:

qml: 320
qml: 320
qml: 320

Assim, todos os 3 métodos de produzir a saída desejada.

2021-10-26 14:01:41

Em outros idiomas

Esta página está em outros idiomas

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