Javascript를 json 문자열로 변환하는 방법: 1. "eval()" 메서드, 구문 "eval("(" + 배열 이름 + ")")"를 사용합니다. 2. "jquery.parseJSON()" 메서드를 사용합니다. , 구문 "jquery.parseJSON(배열 이름)".
이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
첫 번째 방법: js 함수 eval();
testJson=eval(testJson);을 사용하는 것은 잘못된 변환 방법입니다.
올바른 변환 방법에는 ()를 추가해야 합니다. testJson = eval("(" + testJson + ")");
eval()은 매우 빠르지만 모든 javaScript 프로그램을 컴파일하고 실행할 수 있으므로 안전합니다. 질문. 평가()를 사용합니다. 출처는 신뢰할 수 있어야 합니다. 보다 안전한 json 파서를 사용해야 합니다. 서버가 json을 엄격하게 인코딩하지 않거나 입력이 엄격하게 검증되지 않는 경우 잘못된 json을 제공하거나 위험한 스크립트가 포함되어 eval()에서 스크립트를 실행하고 악성 코드를 릴리스할 수 있습니다.
function ConvertToJsonForJs() { //var testJson = "{ name: '小强', age: 16 }";(支持) //var testJson = "{ 'name': '小强', 'age': 16 }";(支持) var testJson = '{ "name": "小强", "age": 16 }'; //testJson=eval(testJson);//错误的转换方式 testJson = eval("(" + testJson + ")"); alert(testJson.name); }
두 번째 방법: jquery.parseJSON() 메서드를 사용하는 방법은 json 형식에 대한 요구 사항이 상대적으로 높으며 json 형식을 준수해야 합니다
jquery.parseJSON()
function ConvertToJsonForJq() { var testJson = '{ "name": "小强", "age": 16 }'; //'{ name: "小强", age: 16 }' (name没有使用双引号包裹) //"{ 'name': "小强", 'age': 16 }"(name使用单引号) testJson = $.parseJSON(testJson); alert(testJson.name); }
[권장 학습:javascript 동영상 튜토리얼]
위 내용은 자바스크립트를 json 문자열로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!