Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 需要向数组添加对象的帮助吗_Javascript_Json_Node.js - Fatal编程技术网

Javascript 需要向数组添加对象的帮助吗

Javascript 需要向数组添加对象的帮助吗,javascript,json,node.js,Javascript,Json,Node.js,我正在从文本文件中提取数据,需要帮助将信息转换为对象 数组: ['celestine,timmy,celestinetimmy93@gmail.com,repeat 124\narun,mohan,reach@gmail.com,repeat 124213\njobi,mec,mec@gmail.com,rave\njalal,muhammed,jallu@gmail.com,rave1231212321\nvineeth,mohan,get,rave1231212321\n' ] 我需要一个

我正在从文本文件中提取数据,需要帮助将信息转换为对象

数组:

['celestine,timmy,celestinetimmy93@gmail.com,repeat 124\narun,mohan,reach@gmail.com,repeat 124213\njobi,mec,mec@gmail.com,rave\njalal,muhammed,jallu@gmail.com,rave1231212321\nvineeth,mohan,get,rave1231212321\n' ]
我需要一个对象中\n之前的值

预期结果:

    [{'celestine,timmy,celestinetimmy93@gmail.com,repeat 124}
                                              {arun,mohan,reach@gmail.com,repeat 124213}

{jalal,muhammed,jallu@gmail.com,rave1231212321}
                                                 {vineeth,mohan,get,rave1231212321} ]
试试这个主意

var x = "celestine,timmy,celestinetimmy93@gmail.com,repeat 124\narun,mohan,reach@gmail.com,repeat 124213\njobi,mec,mec@gmail.com,rave\njalal,muhammed,jallu@gmail.com,rave1231212321\nvineeth,mohan,get,rave1231212321\n";
   var y = x.split("\n");

执行其余部分。使用循环将数组数组转换为对象数组要创建对象,需要将大括号内的字符串格式化为键值对字典。我不确定您的案例中的键或值是什么。但是,如果我假设键是键,值是文本,那么:

var txt = 'celestine,timmy,celestinetimmy93@gmail.com,repeat 124\narun,mohan,reach@gmail.com,repeat 124213\njobi,mec,mec@gmail.com,rave\njalal,muhammed,jallu@gmail.com,rave1231212321\nvineeth,mohan,get,rave1231212321\n';

// Use trim, to remove the trailing whitespace, in your case a '\n'
// Use split to convert the text into an array of elements
var arr = txt.trim().split('\n');

// Use the map function to map each string to an object
var objects = arr.map(function(element) {
              return { key: element};
          });
以下是输出:

objects = [ { key: 'celestine,timmy,celestinetimmy93@gmail.com,repeat 124' },
  { key: 'arun,mohan,reach@gmail.com,repeat 124213' },
  { key: 'jobi,mec,mec@gmail.com,rave' },
  { key: 'jalal,muhammed,jallu@gmail.com,rave1231212321' },
  { key: 'vineeth,mohan,get,rave1231212321' } ]

你可以这样做

按“\n”应用拆分后

你会得到一个一维数组

["celestine,timmy,celestinetimmy93@gmail.com,repeat 124", "arun,mohan,reach@gmail.com,repeat 124213", "jobi,mec,mec@gmail.com,rave", "jalal,muhammed,jallu@gmail.com,rave1231212321", "vineeth,mohan,get,rave1231212321", ""]
然后循环它以获得每个单独的记录

JS:


使用正则表达式。你自己尝试过什么吗?你应该看看拆分和替换函数。预期的输出不符合任何标准。数组对象的非法和错误格式令人惊讶-ve投票是什么原因导致bro。解释它
["celestine,timmy,celestinetimmy93@gmail.com,repeat 124", "arun,mohan,reach@gmail.com,repeat 124213", "jobi,mec,mec@gmail.com,rave", "jalal,muhammed,jallu@gmail.com,rave1231212321", "vineeth,mohan,get,rave1231212321", ""]
var test = ['celestine,timmy,celestinetimmy93@gmail.com,repeat 124\narun,mohan,reach@gmail.com,repeat 124213\njobi,mec,mec@gmail.com,rave\njalal,muhammed,jallu@gmail.com,rave1231212321\nvineeth,mohan,get,rave1231212321\n' ]
var arrString = [];
test.forEach(function(val,key){  
        arrString = val.split('\n')
        });
console.log(arrString);
arrString.forEach(function(val,key){
    console.log(val.split(','));
})