var arr=[];
arr['first']='val1';
arr['second']='val2';
var json=JSON.stringify(arr);
var obj=JSON.parse(json); //obj is array
オブジェクト {"first":"val1","second":"val2"} を返すことはできますか?
PS: Convert Array to Objectトピックを読みました
私は関数のこの方法に興味があります
var arr=[];
arr['first']='val1';
arr['second']='val2';
var json=JSON.stringify(arr);
var obj=JSON.parse(json); //obj is array
オブジェクト {"first":"val1","second":"val2"} を返すことはできますか?
PS: Convert Array to Objectトピックを読みました
私は関数のこの方法に興味があります
誰かがそのような配列を悪用した場合、JSON は役に立ちません。Array オブジェクトの数値インデックスのみをシリアル化し、他には何もしません。プロパティを手動でコピーします。
var obj = {};
for (var prop in arr)
if (arr.hasOwnProperty(prop)) // don't copy enumerables from Array.prototype
obj[prop] = arr[prop];
console.log(obj); // {"first":"val1","second":"val2"}
これを表すために配列を使用しないでください。
代わりにこれを行います:
var obj = {first:"val1",second:"val2"};
オブジェクトを直接定義するだけです。文字列化と解析は必要ありません