我正在嘗試的是使用動態屬性隨時創建對象文字。從CSV動態創建對象
我有一個包含文件內容(CSV格式)的數組。
每個元素是一行(內容與/\r?\n/
分開)。
該數組的第一個元素(第一行)包含我想要用於對象文本的參數,用逗號分隔。
所有其他元素都是在第一行中設置的參數值(仍爲CSV格式)。
我此刻的代碼如下:
function jsonDataArray(array) {
var jsonResult = [],
parameters = [],
values;
for(var i=0; i < array.length; i++) {
if(i === 0) {
var parameters = array[i].split(',');
var objJSON = {};
for(var k=0; k < parameters.length; k++) {
objJSON.eval(parameters[k]);
}
continue;
}
values = array[i].split(',')
for(var j=0; j < objJSON.length; j++) {
objJSON[j] = values;
}
jsonResult.push(objJSON);
}
return jsonResult;
}
現在,當我在節點推出該代碼,objJSON.eval(parameters[k])
行似乎是一個問題出在哪裏,但我沒能解決問題。
所以基本上我的問題有以下幾點:
我應該如何着手有從第一行中的參數設置爲JSON對象的參數+填寫其他行的值?
用這個解析新行是否安全:
/\r?\n/
?
非常感謝您的幫助!
編輯:我錯誤地使用術語JSON意思是對象字面,所以我糾正了這個問題。我沒有修改這個函數,所以我不會在代碼中錯誤地添加錯誤。
這不是'JSON',它只是一個javascript對象 – zerkms 2012-08-02 22:58:08
對不起,我誤解了這個詞。我編輯了我的問題。 – 2012-08-02 23:02:49
JSON是一個表示javascript對象的字符串。你想用這條線完成什麼? 'objJSON.eval(parameters [k]);' – dqhendricks 2012-08-02 23:06:18