gpt4 book ai didi

javascript - 将数组元素写入不同的文件

转载 作者:行者123 更新时间:2023-12-03 08:49:57 24 4
gpt4 key购买 nike

我有一个看起来像这样的数组

var data=[["snp","3569#maspd"],["kpr","ant#$casd"]];

我想要做的是根据[1]元素的长度将此数据写入文件。

例如,让我们获取数组中的第一个元素(这也是一个数组)

["snp","3569#maspd"]

[1]元素3569#maspd的长度为10个字符= length=10,因此该数组中的数据将被写入文件“10.txt”

我已经为它编写了代码

var result=cont.split("\n").
map(function(r){return r.split(",").slice(2,4);//.join(":")
}) //this creates array of arrays


result.forEach(function(x){
var length=x[1].length;
var str=length.toString();


var fil=length+".txt";
var txt=x.join(":");
fs.exists(fil,function(exist){
if(exist){
fs.appendFile(fil,txt,function(err){
if(err) console.log(err)
})
}
else{
fs.writeFile(fil,txt,function(err){
if(err) console.log(err)
})
}
})

}

)

但它总是抛出错误“无法读取未定义的属性长度”。当我删除所有代码并仅保留时

result.forEach(function(x){
var length=x[1].length;
var str=length.toString();
console.log(str)
}
)

它有效,我是否忽略了这里的错误?这是结果数组的示例值(带有随机数据)

var result=[[ '62346asd5f5510dda8f6223c557bb0bf0b5',
'MH))WXlhs\'uOSu.iwJk[n}oz#w>T6L' ],
[ '00d7994173ds265bfe71182154a1143b0', '&Df1' ],
[ '1b6c32941719fcbfc76c6e5428e5f5',
'Fc/0PG#mHb49&#)V|$Swrr7as_*UnL~Y' ],
[ 'f931c2256eca136c97a9a9af4dcae', '.a=]' ]]

最佳答案

您必须检查/清理您的输入并确保 x 有 2 项。

实现此目的的基本方法可能会改变

var length=x[1].length;

类似于

var length= x[1] != undefined ? x[1].length : 0;

更好的方法可能是 filter您排列数据以确保其安全。

关于javascript - 将数组元素写入不同的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32727516/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com