コードウォーズでいくつかの問題を解決していて、文字列を次のような数字のリストに変換しようとしました:
"102904".split("").map(parseInt);
期待される結果は次のようになります。
[1, 0, 2, 9, 0, 4]
しかし、代わりに次のように返します。
[1, NaN, NaN, NaN, 0, 4]
マップは、1桁の文字列であるリスト内の各要素に適用する必要があると考えています。ベースが使用されていないため、正しく解析されていないと考えることができますが、次のようになります。
"102904".split("").map(function(x){ return parseInt(x);});
[ 1, 0, 2, 9, 0, 4]
を使用parseInt(x, 10)
しても結果は変わりません。しかし、parseInt を map に直接送信するとNaN
...
Chrome と Firefox で試しましたが、同じ結果が得られました。