ID非公開

2021/9/25 11:39

44回答

Javascriptについて質問です。

JavaScript40閲覧

ベストアンサー

0

ThanksImg質問者からのお礼コメント

分かりやすいご説明ありがとうございました!

お礼日時:9/25 13:42

その他の回答(3件)

0

ID非公開さん >・・・・ansを新しい配列として指定・・・・・・・・ ご参考に↓ <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> </head> <body> <script> let N = 6; let array = new Array(); let mat =[[1,2,3,4,5,6],[2,5,6,4,8,5],[3,7,6,5,4,2],[5,4,1,2,1,8],[4,6,9,7,5,8],[8,2,3,1,2,5]]; for( i = 0; i < N; i++ ) { array.push( mat[0][i] * mat[i][0] ); } console.log( array ); </script> </body> </html>

0

いくつもの問題点が重なっているようです。 現時点ではまだオリジナルのプログラムを書く知識が十分にないように思われるので、今のまま1人で悩んでいたら、基本的なプログラムに何週間もかかってしまいます。 練習スピードのアップのために、何か面白そうな教則本でも見つけて、そこに書かれている通りのものを作る練習をした方がいいかもしれません。 まず、let はブロックスコープですので、中括弧で囲むとその範囲内でしか参照できなくなります。 ですので永続的に使いたい変数の宣言には使えません。 それから、new Array() にはカンマ区切りデータを配列として扱う機能はありません。 ですので、'1,2,3,4,5,6,' という文字列が [1, 2, 3, 4, 5, 6] という配列に変化したりはしないのです。 今回のような場合は、あらかじめ関数の先頭で宣言した array に、.push() メソッドなどを使って代入するのがいいでしょう。 それから質問の仕方として、最終的にどうしたいのかの言及がありません。 知恵袋の回答者は、質問者さんよりも経験量は豊富ですが、だからといって「うまく動きません」という言葉からどうしたいのか推測できるほどの名探偵ではありません。 理想状態は必ず質問文中に含めるようにしてください。

0

> どのようにすれば良いのでしょうか? どのようにしたいのでしょうか? 配列matの中は判りませんが、 ans += mat[0][i] * mat[i][0] + ","; この文の実行後、ansは文字列ですよね。 let array = new Array(ans); Arrayに文字列を引数として与えている。 どういうデータがあって、どういう処理をしたいのかを書かないと、回答者側には何も伝わりません。