events: "[{id:"3",title:"activity",start:"2017-03-11 00:00:00",allDay:true},{id:"4",title:"nutrition",start:"2017-03-11 00:00:00",allDay:true}]"
この文字列をangularjs2の通常の配列として渡すにはどうすればよいですか?引用符を削除するか、通常の配列としてこの文字列を渡すにはどうすればいいですか?
events: "[{id:"3",title:"activity",start:"2017-03-11 00:00:00",allDay:true},{id:"4",title:"nutrition",start:"2017-03-11 00:00:00",allDay:true}]"
この文字列をangularjs2の通常の配列として渡すにはどうすればよいですか?引用符を削除するか、通常の配列としてこの文字列を渡すにはどうすればいいですか?
JSON文字列です。 JSON.parseを使用すれば、オブジェクトの配列を取得できます。
ここで、イベントオブジェクトの文字列は有効なJSONではありません。だからここでJSON.Parse
を使用することはできません。有効なJSONについてkey
は、二重引用符などでラップする必要があります:あなたの入力刺さはまだあなたが変換のためにeval
方法を使用することができる有効なJavaScriptオブジェクトであり、以来{id:...}
は{"id":...}
let input = {
events: '[{id:"3",title:"activity",start:"2017-03-11 00:00:00",allDay:true},{id:"4",title:"nutrition",start:"2017-03-11 00:00:00",allDay:true}]'
};
let dataToSend = Object.assign({}, input);
dataToSend.events = eval(dataToSend.events);
console.log(dataToSend);
でなければなりません。ここでは入力のコピーを作成するためにobject.assign
を使用しました。したがって、dataToSend
の変更は実際の入力オブジェクトには影響しません。
それがオブジェクト配列として扱います。私はそれを普通の配列にする必要があります –
@maricejuguilon マップを使用してくださいhttp://stackoverflow.com/questions/14810506/map-function-for-objects-instead-of-arrays – Filip