私はJavascriptクラスのラボに取り組んでおり、カスタムオブジェクトとコンストラクター関数専用のラボです。オブジェクト。好きなミュージシャンのカスタムオブジェクトを作っています。繰り返しアクセスできるお気に入りのリストを作成します。ミュージシャンを作成するコンストラクター関数(musicalArtistと呼ばれる)を作成しました。Andに引数を渡し、カスタムオブジェクトを配列に格納しました。次に、showInfo()という別の関数を作成しました。最初の行に、次のコードを入力しました。
var info =“”
これにより、オブジェクトを実行するときに情報を追加できる空の文字列が作成されます。次に、countという名前のカウント変数が0に設定されたforループを作成しました。そして、forloop内で、オブジェクトに関する詳細をinfo変数に追加しました。ユーザーがボタンをクリックすると、showInfo()関数が実行されるはずですが、実行されませんか?これが私のコードです:
<!DOCTYPE html>
<html lang="en">
<head>
<title> Custom Objects Lab</title>
<script>
function musicalArtist(name, song, description){
this.name = name;
this.song = song;
this.description = description;
}
var t= new musicalArtist("Tyler the Creator", "All of them", "He's
beautiful I might cry");
var s= new musicalArtist("Slipknot", "Wait and Bleed", "Literally so
awesome");
var a= new musicalArtist("Ayesha Erotica", "Literal Legend", "She is
such an icon");
var myArtists = [t];
var myAritsts= [s];
var myAritsts = [a];
function showInfo() {
var info = ""
for (var count = 0; count < 3; count++) {
info += "Name:" + myAritsts[count].name + "\n";
info += "Best Song:" + myAritsts[count].song + "\n";
info += "Descrition:" + myAritsts[count].description +
"\n";
}
alert(info);
}
</script>
</head>
<body>
<button onclick="showInfo()">A</button>
</body>
</html>
あなたのコードは非常に機能しそうです。最近では、イベントリスナーを使用するという@stroedaの提案がより一般的に使用されていますが、それがコードの動作を妨げるものではありません。
あなたを正しい方向に導くためのいくつかのメモ:
1)コンストラクターを定義するときは、関数名を大文字で始めるのが慣例です。したがって、function musicalArtist
使用する代わりにfunction MusicalArtist
。これは機能を変更しませんが、他の人があなたのコードを見ている場合は予想されます。
2)書き込むvar myArtists = [something]
たびに、前のmyArtists
配列が上書きされます。必要なのは、3人のアーティストが含まれる配列です。
3)配列全体を反復処理しようとしている場合はlength
、想定される長さ3をハードコーディングするよりも、配列のプロパティを使用する方がよいでしょう。そうすれば、長さが変更された場合でも、コードで処理できるようになります。 。
4)スペルを必ず確認してください。1つのタイプミスで、プログラム全体が破損する可能性があります。コードを壊すタイプミスがあります。VS Codeのようなエディターでコードを記述し、リンターを使用すると、タイプミスを見つけやすくなります。
クラスで頑張ってください!
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加