25. ポートフォリオの保存
// 保存するオブジェクトを設定します。
var items = [];
for (var i = 0; i < this.items().length; i++) {
var item = this.items()[i];
var newItem = {
symbol: item.symbol,
chart: item.chart(),
shares: item.shares(),
unitCost: item.unitCost()
};
items.push(newItem);
}
// オブジェクトをJSONに変換して、ローカルストレージに保存します。
localStorage["items"] = JSON.stringify(items);
25
ローカルストレージの保存とJSONデータ変換
26. ポートフォリオの読み込み
// ローカルストレージからJSONデータを読み込みます。
var items = localStorage["items"];
// JSONデータをオブジェクトに変換します。
items = JSON.parse(items);
// ポートフォリオデータを設定します。
for (var i = 0; i < items.length; i++) {
var item = items[i];
this.addItem(item.symbol, item.chart, item.shares,
item.unitCost);
}
26
ローカルストレージの読み込みとJSONデータ変換
27. Webサービスの呼び出し
// Webサービスを呼び出して、TSVデータを解析します。
$.get("StockInfo.ashx", function (result) {
var lines = result.split("r");
for (var i = 0; i < lines.length; i++) {
var items = lines[i].split("t");
if (items.length == 2) {
// 会社情報を追加します。
var c = new Company(self, $.trim(items[0]),
$.trim(items[1]));
self.companies.push(c);
}
}
});
27
TSVデータの読み込みと設定