質問: [ [_src * _src, _mid * _mid, _dst * _dst], [_src, _mid, _dst], [1, 1, 1], [0, top_z, 0] ]; for (key in array) { console.log(array[key]); } console.log(array); ``` 上記のコードでforループ内のconsole.logでは数値の配列として表示されるのですが,最後のconsole.logではすべての要素がNaNとなってしまいます. なお,_src, _mid, _dst, top_z はすべて数値です. arrayは数値の2次元配列として利用したいのですがどうすればよいでしょうか. この問題の原因,解決策わかる方いらっしゃいましたらご回答よろしくお願いします.
回答: `array`の宣言時に既に2次元配列と言う点は既に回答があるので別視点から...... > > _src, _mid, _dst, top_z はすべて数値です > > > ......と記載されていますが、そうとは思えないです。 数値の2乗をされていますが、そこに数値は入ってきておりますか? undefinedでかけるなどで演算に失敗した場合にNaNになってしまいます。 第2要素目にオリジナルが入ってるようですので、 そちらで値がそこにたどり着いているか確認してみてはいかがでしょうか? ちなみに、ブラウザにもよりますがChromeでは空文字だろうがnullだろうが0扱いしてくれます。 また、文字列型になってるくらいなら勝手にキャストしてくれます。 !sample code