Я преобразовываю массив Ruby в JSON, сохраняя в MySQL и затем загружая в KnockoutJS. Проблема в том, что массив остается строкой JSON, и я не могу ее перебирать.Ruby array to KnockoutJS Object
tags = `/usr/bin/svn ls #{svn_repo_url}`.split("/\n")
puts tags.inspect
["1.0.0", "1.0.1", "1.0.10", "1.0.11", "1.0.12", "1.0.13", "1.0.14", "1.0.15", "1.0.16", "1.0.2", "1.0.3", "1.0.4", "1.0.5", "1.0.6", "1.0.7", "1.0.8", "1.0.9"]
puts tags.to_json
["1.0.0","1.0.1","1.0.10","1.0.11","1.0.12","1.0.13","1.0.14","1.0.15","1.0.16","1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","1.0.7","1.0.8","1.0.9"]
Это сохранялось MySQL, а затем загружается в KnockoutJS, но он остается в виде строки, поэтому я не могу перебрать в цикле Еогеасп.
Я пытался сделать ko.mapping.toJS(myString)
и ko.toJSON(myString)
, но до сих пор не имея удачи и не в состоянии преобразовать в фактический массив или объект, я могу перебирать над
Что я делаю неправильно здесь?
Спасибо
UPDATE: решаемые с eval(myString)
Если вы можете, не используйте eval, используйте JSON.parse, поскольку sporkydorky сказал: http://stackoverflow.com/questions/86513/why-is-using-the-javascript-eval-function-a-bad -idea – pax162
@ pax162: я пробовал это, но он бросает сообщение: Неожиданный конец ввода – solefald
Вы уверены, что строка действительна JSON? Вы обертываете его в правильные кавычки? – pax162