くり返しとデータの持ち方

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