🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

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

Q&A

1回答

1260閲覧

javascriptでオブジェクトのプロパティの値を変更したいのですがundefiendが返されます。

tetsu777

総合スコア39

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

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

0グッド

1クリップ

投稿2021/01/26 05:19

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
・javascriptでオブジェクトのプロパティの値を変更したい
・具体的には以下コードのobject2のプロパティ名と同じobject1のプロパティ名の値を、同object2のプロパティ名の値に変更したいのですが、object1のプロパティ名の値がundefiendになる理由を確認したい。

発生している問題・エラーメッセージ

1.let object2property = Object.keys(object2)にてobject2のプロパティ名を取得する。 2.object1.object2propertyにてobject1のプロパティ値を取得しようとしたのですが、undefinedが返されます。

該当のソースコード

javascript

1<!DOCTYPE html> 2<html> 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width" /> 6</head> 7<body> 8 9 <script> 10 11  let object1 = {name:"太郎",age:"14",address:"東京"}; 12  let object2 = {name:"次郎"}; 13 14  let object2property = Object.keys(object2)[0]; 15 16 console.log("object2property",object2property); 17 18 //object1内にobject2propertyで取得したプロパティ名が存在しているかチェック 19  const check = object2property in object1; 20 if (check) { 21 console.log('true:プロパティnameは存在します'); 22 } else { 23 console.log('false:プロパティnameは存在しません'); 24 } 25 26  console.log("object1.object2property",object1.object2property); 27  //→undefiendが返されます。 28 29 30 </script> 31</body> 32</html>

試したこと

const check = object2property in object1 にてobject1内にobject2property にて取得したプロパティ名が存在しているかチェックしたところtrueが返されましたので同左プロパティ名は存在している様です

補足情報(FW/ツールのバージョンなど)

chrome バージョン: 87.0.4280.141

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

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

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

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

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

guest

回答1

0

js

1console.log("object1.object2property",object1[object2property]);

投稿2021/01/26 05:23

kei344

総合スコア69596

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問