Bagaimana saya bisa mengkonversi string yang menggambarkan objek menjadi string JSON menggunakan JavaScript (atau jQuery)?
mis: Konversi ini ( BUKAN string JSON yang valid):
var str = "{ hello: 'world', places: ['Africa', 'America', 'Asia', 'Australia'] }"
dalam hal ini:
str = '{ "hello": "world", "places": ["Africa", "America", "Asia", "Australia"] }'
Saya ingin menghindari penggunaan eval()
jika memungkinkan.
data
-attrubute, seperti ini: <div data-object="{hello:'world'}"></div>
dan saya tidak ingin menggunakan tanda kutip tunggal dalam HTML (jadi mungkin tidak dapat dipercaya)
<div data-object='{"hello":"world"}'></div>
apakah HTML yang valid 100% (apa hubungannya dengan tanda kutip dengan percaya atau tidak?). Jika Anda melakukannya dengan cara ini, Anda bisa JSON.parse
melakukannya dan itu akan berfungsi dengan baik. Catatan: kunci juga perlu dikutip.
<div data-object="{\"hello\":\"world\"}"></div>
. Jika Anda tidak ingin menggunakan JSON yang valid dalam atribut, maka Anda harus membuat format sendiri dan menguraikannya sendiri.