Closed ahmedshendy closed 9 years ago
It seems you’re misunderstanding what jsesc
does. What are you trying to do, exactly? Parsing a JSON-formatted string back into an object can be done using JSON.parse
only.
the issue is in this character \u0002, when using JSON.parse through exception
I need to escape character \u0002
I need to escape character
\u0002
jsesc('\u0002');
ok, this character included in this string '{"account_id":111,"account_name":"test","interface_id":2,"request_id":0,"message_id":"6a23bbbe-1cfd-4ba5-8dfd-b3b7abb86576","source_addr":"Test TNT","destination_addr":"96892000730","coding":2,"concatenation":1,"message_text":"S3rvT3L20130NVBQakoiYHello, I hope you have a nice day. @\u0002#%!&\/)(=?*+,","UDH":"","flash":0,"validaty_period":1440,"delivery_time":1440,"smpp_port":2012,"registered_delivery":1,"dlr_ip":"10.158.36.200","dlr_port":2051,"submit_sm_start_timestamp":"2015-01-06T05:40:05.042"}'
that I want parse it to JSON
Use JSON.parse
.
when I use JSON.parse with this string, this error generated SyntaxError: Unexpected token ^E at Object.parse (native)
How is jsonText
generated? Generate it using jsesc
so it is properly escaped (JSON-serialized data cannot contain literal control characters), then JSON.parse
works fine.
My code is:
The result is: