JavaScript에서 JSON 문자열을 만드는 방법은 무엇입니까?
window.onload = function(){
var obj = '{
"name" : "Raj",
"age" : 32,
"married" : false
}';
var val = eval('(' + obj + ')');
alert( "name : " + val.name + "\n" +
"age : " + val.age + "\n" +
"married : " + val.married );
}
이와 같은 코드에서 그냥 놀기 위해 JSON 문자열을 만들려고합니다. 그것은 오류를 던지고 있지만 모든 이름, 나이, 결혼 한 줄을 한 줄 (2 행)에 넣으면 그렇지 않습니다. 뭐가 문제 야?
Javascript는 여러 줄에 걸쳐 문자열을 처리하지 않습니다.
다음을 연결해야합니다.
var obj = '{'
+'"name" : "Raj",'
+'"age" : 32,'
+'"married" : false'
+'}';
ES6 이상에서 템플릿 리터럴을 사용할 수도 있습니다 : ( 문서는 여기를 참조하세요 )
var obj = `{
"name" : "Raj",
"age" : 32,
"married" : false,
}`;
내가하는 방법은 :
var obj = new Object();
obj.name = "Raj";
obj.age = 32;
obj.married = false;
var jsonString= JSON.stringify(obj);
이런 식으로 오류 가능성을 줄일 수 있다고 생각합니다.
JSON.stringify 함수는 json 객체를 문자열로 변환합니다.
var jsonAsString = JSON.stringify(obj);
브라우저가이를 구현하지 않는 경우 (IE6 / IE7) JSON2.js 스크립트를 사용하십시오 . 존재하는 경우 기본 구현을 사용하므로 안전합니다.
이것은 매우 쉽고 간단 할 수 있습니다.
var obj = new Object();
obj.name = "Raj";
obj.age = 32;
obj.married = false;
//convert object to json string
var string = JSON.stringify(obj);
//convert string to Json Object
console.log(JSON.parse(string)); // this is your requirement.
사용 JSON.stringify
:
> JSON.stringify({ asd: 'bla' });
'{"asd":"bla"}'
I think this way helps you...
var name=[];
var age=[];
name.push('sulfikar');
age.push('24');
var ent={};
for(var i=0;i<name.length;i++)
{
ent.name=name[i];
ent.age=age[i];
}
JSON.Stringify(ent);
There is a "official" JSON implementation http://www.json.org/js.html by Crockford: https://github.com/douglascrockford/JSON-js
json strings can't have line breaks in them. You'd have to make it all one line: {"key":"val","key2":"val2",etc....}
.
But don't generate JSON strings yourself. There's plenty of libraries that do it for you, the biggest of which is jquery.
참고URL : https://stackoverflow.com/questions/8963693/how-to-create-json-string-in-javascript
'your programing' 카테고리의 다른 글
Python : 사전의 값으로 키를 교환하는 가장 좋은 방법은 무엇입니까? (0) | 2020.09.25 |
---|---|
SD에서 파일 및 디렉토리를 프로그래밍 방식으로 이동, 복사 및 삭제하는 방법은 무엇입니까? (0) | 2020.09.25 |
adb doesn't show nexus 5 device (0) | 2020.09.25 |
Location of the mongodb database on mac (0) | 2020.09.25 |
No repository found error in Installing ADT in eclipse Indigo (0) | 2020.09.25 |