用于在同一列中分隔逗号分隔值的Javascript

时间:2011-07-20 08:02:09

标签: javascript csv

我已将csv文件解析为javascript对象。

array[1] = ["2011-07-18", "373.800"]
array[2] = ["2011-07-19", "372.300"]

如何创建仅包含的新数组?

["373.800", "372.300"]

3 个答案:

答案 0 :(得分:1)

试试这个。

var items = [];
for( var i = 0; i < array.length; i++ ){
    items.push( array[i][1] );
}

答案 1 :(得分:0)

通过创建新阵列?

<script>
    array = new Array();
    array[0] = ["2011-07-18", "373.800"];
    array[1] = ["2011-07-19", "372.300"];

    array2 = new Array();
    array2[0] = [array[0][1], array[1][1]];

    alert(array2[0]);
</script>

答案 2 :(得分:0)

在较新的浏览器(我的意思是Chrome / Firefox 3+)中,您可以通过Array.map https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/array/map轻松实现此目的。您可以参考兼容性部分自行实现Array.map以获得较旧的浏览器兼容性。

if (!Array.prototype.map)
{
  Array.prototype.map = function(fun /*, thisp */)
  {
    "use strict";

    if (this === void 0 || this === null)
      throw new TypeError();

    var t = Object(this);
    var len = t.length >>> 0;
    if (typeof fun !== "function")
      throw new TypeError();

    var res = new Array(len);
    var thisp = arguments[1];
    for (var i = 0; i < len; i++)
    {
      if (i in t)
        res[i] = fun.call(thisp, t[i], i, t);
    }

    return res;
  };
}

var array = [];
array[0] = ["2011-07-18", "373.800"];
array[1] = ["2011-07-19", "372.300"];
var result = array.map(function(ary) {
    return ary[1];
});
alert(result);