使用 Javascript 将文本文件转换为关联数组
Convert Text FIle to Associative Array with Javascript
我得到了一个文本文件,我想将其转换为关联数组,这样我就可以使用插件将数据转换为 table。我认为最聪明的方法是让它成为一个 assoc。阵列,但我一直在尝试的一切都让我无处可去。最初该文件只有 ID,没有名称,是的,我可以手动删除名称并只使用数字,但这似乎适得其反。
这是文本文件users.txt
Person_1 USERID_1
Person_2 USERID_2
Person_3 USERID_3
Person_4 USERID_4
Person_5 USERID_5
Person_6 USERID_6
Person_7 USERID_7
Person_8 USERID_8
Person_9 USERID_9
Person_10 USERID_10
这是我的代码如何读取只有数字的原始文件,users.js
$(document).ready( function() {
var userArray = [];
$.get('../users.txt', function(data){
userArray = data.split('\n');
console.log(userArray);
var barChartData = {
labels : ["User 1","User 2","User 3","User 4","User 5","User 6","User 7","User 8","User 9","User 10"],
datasets : [
{
label: "Number of CD's Bought",
fillColor : "rgba(0,0,0,0.5)",
strokeColor : "rgba(0,0,0,0.8)",
highlightFill: "rgba(222,222,222,0.75)",
highlightStroke: "rgba(222,222,222,1)",
data : [userArray[0],userArray[1],userArray[2],userArray[3],userArray[4],userArray[5],userArray[6],userArray[7],userArray[8],userArray[9]]
}
]
};
我怎样才能更新我的代码,使 User[0][0]
成为 Person_1
和 User[0][1]
成为 USERID_1
等等。我试图替换换行符 \n
但它只在第一行替换,其余换行符在控制台中为 ↵
。有什么想法吗?
正如我最初从作为 Web 服务的查询中获取和 XML 文件一样,但那个更麻烦
你可以试试这个
var userArray =data.split('\n');
for(i=0;i<userArray .length;i++){
var u=userArray [i];
var t=[];
var temp=u.split(/\s+/g);
t.push(temp[0]);
t.push(temp[1]);
userArray [i]=t;
}
这是一个fiddle
我得到了一个文本文件,我想将其转换为关联数组,这样我就可以使用插件将数据转换为 table。我认为最聪明的方法是让它成为一个 assoc。阵列,但我一直在尝试的一切都让我无处可去。最初该文件只有 ID,没有名称,是的,我可以手动删除名称并只使用数字,但这似乎适得其反。
这是文本文件users.txt
Person_1 USERID_1
Person_2 USERID_2
Person_3 USERID_3
Person_4 USERID_4
Person_5 USERID_5
Person_6 USERID_6
Person_7 USERID_7
Person_8 USERID_8
Person_9 USERID_9
Person_10 USERID_10
这是我的代码如何读取只有数字的原始文件,users.js
$(document).ready( function() {
var userArray = [];
$.get('../users.txt', function(data){
userArray = data.split('\n');
console.log(userArray);
var barChartData = {
labels : ["User 1","User 2","User 3","User 4","User 5","User 6","User 7","User 8","User 9","User 10"],
datasets : [
{
label: "Number of CD's Bought",
fillColor : "rgba(0,0,0,0.5)",
strokeColor : "rgba(0,0,0,0.8)",
highlightFill: "rgba(222,222,222,0.75)",
highlightStroke: "rgba(222,222,222,1)",
data : [userArray[0],userArray[1],userArray[2],userArray[3],userArray[4],userArray[5],userArray[6],userArray[7],userArray[8],userArray[9]]
}
]
};
我怎样才能更新我的代码,使 User[0][0]
成为 Person_1
和 User[0][1]
成为 USERID_1
等等。我试图替换换行符 \n
但它只在第一行替换,其余换行符在控制台中为 ↵
。有什么想法吗?
正如我最初从作为 Web 服务的查询中获取和 XML 文件一样,但那个更麻烦
你可以试试这个
var userArray =data.split('\n');
for(i=0;i<userArray .length;i++){
var u=userArray [i];
var t=[];
var temp=u.split(/\s+/g);
t.push(temp[0]);
t.push(temp[1]);
userArray [i]=t;
}
这是一个fiddle