質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

3回答

1369閲覧

javascriptでのオブジェクトの代入

K-06

総合スコア18

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2020/04/02 07:02

javascript

1const characters = [ 2 {name: "AAA", age: 14}, 3 {name: "BBB", age: 100}, 4 {name: "CCC", age: 5}, 5]; 6 7// for文を完成させてください 8for (let i = 0 ; i < characters.length ; i++) { 9 console.log("--------------------"); 10 11 **// 定数characterを定義してください 12 const character = characters[i];** 13 14 // 「名前は〇〇です」を出力してください 15 console.log(`名前は${character.name}です`); 16 17 // 「〇〇歳です」を出力してください 18 console.log(`${character.age}歳です`); 19}

こちら、javascriptを勉強しているのですが、
『 定数characrterを定義してください 』 と記載してあるのですが、そちらについて質問です。

・冒頭で3つのオブジェクトをcharactersで代入。
➡︎なぜ再度、各々をcharacterで代入するのか??

拙い文章でまだ浅い知識でしか質問ですが
どうぞよろしくお願いします。。。。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

別にこれでも動くので、ただ単に「そういう課題だから」です。

js

1const characters = [ 2 {name: "AAA", age: 14}, 3 {name: "BBB", age: 100}, 4 {name: "CCC", age: 5}, 5]; 6 7for (let i = 0 ; i < characters.length ; i++) { 8 console.log("--------------------"); 9 console.log(`名前は${characters[i].name}です`); 10 console.log(`${characters[i].age}歳です`); 11}

投稿2020/04/02 07:17

ozwk

総合スコア13521

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

K-06

2020/04/03 03:56

シンプルかつわかりやすい説明ありがとうございます!長文など説明が多いのが苦手なのでシンプルに説明いただけるととても助かります!ありがとうございます!!!!????
guest

0

投稿2020/04/02 08:11

Lhankor_Mhy

総合スコア36074

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

K-06

2020/04/03 03:53

ご回答ありがとうございます!わかりやすい例がすでに出ていたのは自分の検索不足でした。。。質問する前はまずしっかり自分で検索することを心がけます!
guest

0

ベストアンサー

一つの変数や定数には一つの値しか代入できません。
これを正しく理解できていますね、素晴らしい!

しかし、九九のように1から9までの数字が列になったようなものはどうやって表現するのでしょうか?

それを表現するために、JavaScriptには配列が存在します。
const characters = [A, B, C]という風書式で記載します。
[]で括って、,をセパレータにします。
今回は[A, B, C]なので3つの値がA→B→Cの順番に宣言されていることになります。

こういう風に3つのデータを配列にひとまとめにして、
1つの変数・定数に代入することが可能です。


・冒頭で3つのオブジェクトをcharactersで代入。

➡︎なぜ再度、各々をcharacterで代入するのか??

この問いへの回答としては、

characterは各々ではなく、配列1個を定義したんだよ。
だから3個代入したわけじゃないんだよ。

という答えになります。


念の為補足です

{name: "AAA", age: 14} ← これは?

これはオブジェクトです。
{key: value}という書式で表し、こちらも配列と同様,で複数の値を宣言できます。

このkeyに使う文字列は好きなものを名付ける事ができます。
場面に相応しい値を格納してあげてください。

例えばRPGのゲームで敵と戦う勇者を作りたいとしたら、
敵と戦うためにHPや攻撃力等の数値が必要になりますね。
なので{name: "勇者", hp: 100, maxHp: 250, atk: 50, def: 40}といった感じのオブジェクトを宣言する事になります。

要らない値が沢山準備されていても
プログラムが読みづらいだけなので、必要最小限の値だけ宣言してあげるようにしましょうね。

投稿2020/04/02 07:21

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

K-06

2020/04/03 03:54

とてもわかりやすい説明ありがとうございます????こちらを参考に進めていきたいと思います!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問