DataTable的构造函数接受一个Object参数data,如果data是对象,那么通过循环把data的每一个属性转化成数组;
如果data是数组,则直接返回;
如果data是空,则返回空数组。

解决方案 »

  1.   

    换一个角度,把闭包函数抽出来可能会更清楚一点var oPara = {};
    oPara.name = "datatable";
    oPara.initialize = _initialize;function _xxx(__data)
    {
    function _loop(val, name)
        {
            rtn.push(val);
        }
        
        var rtn = [];
        utils.loop(__data, _loop);
        return rtn;
    }function _initialize(data)
    {
        this.data = (utils.getType(data) == "object")
         ? _xxx(data) : data ? [].concat(data) : [];
        this.cursor = 0;
    }var DataTable = new Class(oPara)