以下の関数は、csv ファイルを配列に解析するため、次のようになります。
[[1,56.79],[2,57.50],[3,71.60],[4,69.10]]
function CSVToArray (csvString) {
var arrData = [[]];
var rows = csvString.match(/[^\r\n]+/g);
var len = rows.length
for (var i=0; i<len; ++i)
{
var cols = rows[i].split(",")
arrData[ arrData.length - 1 ].push( parseFloat(cols[0]) );
arrData[ arrData.length - 1 ].push( parseFloat(cols[1]) );
if (i<(len-1))
{
arrData.push( [] );
}
}
return( arrData );
};
次のようなデータがない場合、配列にnullを入れることができるように修正しようとしています
[[1,56.79],[2,57.50],null,[3,71.60],null,[4,69.10]]
次のことを試しましたが、正しく動作しません
function CSVToArray (csvString) {
var arrData = [[]];
var rows = csvString.match(/[^\r\n]+/g);
var len = rows.length
for (var i=0; i<len; ++i)
{
var cols = rows[i].split(",")
if (cols[1] != "")
{
arrData[ arrData.length - 1 ].push( parseFloat(cols[0]) );
arrData[ arrData.length - 1 ].push( parseFloat(cols[1]) );
arrData.push( [] );
}
else
{
arrData.push( null);
}
}
return( arrData );
};
配列内でnullではなくnullを取得する方法を教えてください。
基本的に、これを実行できるようにデータ構造を正しく取得しようとしていますhttp://jsfiddle.net/KhpCE/1/