いつもお世話になっています。
配列から任意の要素を抽出するにはfilter()で簡単にできますが、
これと同じようにオブジェクトから任意のプロパティを抽出するにはどうすれば良いですか。
例えば、次のようなデータがあって、
勇者のレベルが上がった時に、その時点で覚えられる呪文を全部取得する最も簡単な方法はなんですか。
呪文 = {
ホイミ: {mp: 3, 覚えるレベル: {勇者: 5, 僧侶: 1},
ルーラ: {mp: 8, 覚えるレベル: {勇者: 8, 魔女: 15}
}
パーティー = [
勇者: {レベル: 1, 呪文 = []},
魔女: {レベル: 1, 呪文 = []}
]
No.1ベストアンサー
- 回答日時:
for (職 in パーティ) {
_ 位 = パーティ[職].レベル
_ 会得 = []
_ for (名 in 呪文) {
_ _ if (呪文[名].覚えるレベル[職] <= 位) {
_ _ _ 会得.add(名)
_ _ }
_ }
_ パーティー[職].呪文 = 会得
}
参考)
https://developer.mozilla.org/ja/docs/Web/JavaSc …
もっと厳密にやるならば
https://developer.mozilla.org/ja/docs/Web/JavaSc …
https://developer.mozilla.org/ja/docs/Web/JavaSc …
ありがとうございます^^;
改めて見ると私の質問、構文エラーがひどい。。。
ご回答の_は、読みやすくするための単なる字下げ、会得.add(名)は、会得.push(名)と読み替えました。
このコードで満足する結果が得られました。
察するにオブジェクトには、配列のfilter()のような便利なメソッドがないので、filter()を使いたいなら、あらかじめObject.keys()や.entries()で配列を作るという手順が必要と認識しました。
さらに調べますと、値だけ取ってくるObject.values()を知り、
Object.values().filter()でオブジェクトから任意のプロパティ値を全部取ってくる事ができました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 英語勉強 4 2022/07/14 21:01
- Word(ワード) Word 見出しの設定が上手くいきません。 2 2023/06/18 10:05
- 新卒・第二新卒 就活について なぜ、日本の会社は新卒一括採用でポテンシャル採用の上に年功序列や固定給、時間給何ですか 5 2023/08/18 23:09
- 超常現象・オカルト 魔術師に本気でなりたいと思っております。 5 2022/03/22 15:09
- 大学受験 回答お願い致します! 大学受験、古典の参考書ルートです! 古典の参考書ルートについて質問です。 ①読 1 2023/08/13 20:17
- 大学受験 なぜ共通テストの古文、漢文は1ヶ月でなんとかなるとか言われるんですか?ウソですよね?私勉強してみまし 3 2023/03/01 01:08
- その他(教育・科学・学問) 英語できません、助けてください… 3 2022/11/14 23:59
- その他(ゲーム) ドラクエ5の兵士ピピン等について。 1 2023/06/30 04:09
- 超常現象・オカルト 私に向いているお仕事は何かありますでしょうか。 簡単に自己紹介をすると、私は高卒のオカルト好きで、趣 7 2023/01/10 14:16
- CGI サイト訪問者の情報を取得したい 1 2023/02/21 11:03
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C#テキストボックスの文字を配...
-
同じIDで定義した要素の配列を...
-
二次元配列を使って順位をだす...
-
Javaについて質問です。 要素数...
-
javascript 配列 変数名「arra...
-
React hooksが値を返して配列変...
-
JavaScriptで2次元配列を扱う方法
-
二次元配列の全要素の全要素を...
-
Perlの配列をJavaScriptに渡せ...
-
jspからjavascriptの変数引継ぎ
-
JavaScriptにおける[] とか :...
-
配列の1要素を代入した変数を使...
-
Boolean型配列中のTrueの有無を...
-
JavaScript window.openで開く...
-
スマフォではボタンを表示させ...
-
ActiveXobjectが作成できない
-
javascriptで、表示されている...
-
関数でy=g(x)のgとは何の略です...
-
なぜmatchメソッドがエラーにな...
-
gas スプレッドシートがアクテ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
同じIDで定義した要素の配列を...
-
C#テキストボックスの文字を配...
-
React hooksが値を返して配列変...
-
オブジェクトから任意のプロパ...
-
javascript 変数名の連結をしたい
-
jspからjavascriptの変数引継ぎ
-
配列の1要素を代入した変数を使...
-
JavaScriptにおける[] とか :...
-
フォーム入力値の重複チェック
-
javascriptで行を抽出したいです。
-
undefinedを表示させない方法は...
-
javascriptで2つのArrayの...
-
WSH(Jscript)でファイル一覧
-
JavaScriptでの動的な多次元配...
-
Perlの配列をJavaScriptに渡せ...
-
[JS] setAttributeで保存される...
-
JSONデータを50音順でソートしたい
-
二次元配列の全要素の全要素を...
-
javascriptを用いて作成された...
-
バナーのランダム表示(複数、...
おすすめ情報