@spam Спасибо за помощь!) Всё работает
Почему не получается применить условие if для переменной вида [object] ?
-
Вот строка
{ "predmet": [ { "status": "v_nalichii", "parametri": { "color": "belii_stol", "quantity": { "value": "29.0" } } }, { "status": "v_nalichii", "parametri": { "color": "krasnii_stol", "quantity": { "value": "29.0" } } }, { "status": "v_nalichii", "parametri": { "color": "belaya_tumba", "quantity": { "value": "29.0" } } } ] }К ней применяется jsonpath запрос для получения всех значений, соотвествующих этому запросу:
$.predmet[?(@.parametri.color.match(/stol/))]
На выходе в переменной имеем такую абра-кадабру:[ { parametri: { } status: "v_nalichii" } { parametri: { } status: "v_nalichii" } ]т.е. без запятой между выведенными значениями, подходящими под условие и с новой строки и в виде объекта (сомневаюсь, что его можно таковым назвать).
Применить к такому условию обычное действие if не получается, т.е. например, при попытке найти в такой переменной слово "v_nalichii" БАС просто пропускает это условие, считает его ложным, хотя это не так.
Как применить If к этой переменной в квадратных скобках?
problemka2.xml -
@botovod said in Почему не получается применить условие if для переменной вида [object] ?:
Применить к такому условию обычное действие if не получается, т.е. например, при попытке найти в такой переменной слово "v_nalichii" БАС просто пропускает это условие, считает его ложным, хотя это не так.
Как применить If к этой переменной в квадратных скобках?Либо указывайте в условии значение конкретного ключа
json[0].status == "v_nalichii"или гуглите как сравнить ассоциативные массивы в js