01 / 04
取り出せるなら入れ直せる
pet.age で取り出せたということは、同じ書き方の左側に置けば書き換えられる。
オブジェクト.名前 = 新しい値; の形だよ。配列を番号で書き換えたときと同じ考え方だね。
const pet = { name: "もふ", age: 3 };pet.age = 4;console.log(pet.age);実行結果
4
くり返しとデータの持ち方
INPUT · スライド
01 / 04
pet.age で取り出せたということは、同じ書き方の左側に置けば書き換えられる。
オブジェクト.名前 = 新しい値; の形だよ。配列を番号で書き換えたときと同じ考え方だね。
const pet = { name: "もふ", age: 3 };pet.age = 4;console.log(pet.age);実行結果
4
02 / 04
+= や ++ もプロパティに使えるよ。「1歳増やす」「在庫を3減らす」といった処理が短く書ける。
配列のときと同じで、const で作ったオブジェクトでも中身の書き換えはできる。だからオブジェクトも const で作るのがふつうだよ。
const stock = { name: "のり", count: 10 };stock.count -= 3;console.log(stock.count);実行結果
7
03 / 04
まだ無い名前に代入すると、そのプロパティが新しく作られる。
最初は少ない情報で作っておいて、あとから足していく——という書き方ができるよ。
const user = { name: "ゆい" };user.age = 12;console.log(user.name);console.log(user.age);実行結果
ゆい 12
04 / 04
注意したいのがここ。let p = item.price; のように受け取ったあと p を変えても、オブジェクトのほうは変わらない。
渡されるのは値のコピーだからだよ。オブジェクトを変えたいなら item.price = ... と書こう。
const item = { price: 180 };let p = item.price;p += 100;console.log(p);console.log(item.price);実行結果
280 180