replace解决fs.readdir章节目录排序问题

章节目录排序问题

问题 使用fs.readdir(’./cartoon/一人之下’, function (err, files) {console.log(files);}打印出来的目录乱的一批,前10话直接放后面了
[“第10话10.恶劣的开始也算开始”, “第11话11.运气的触底反弹”, “第12话12.强力反弹中!”, “第13话13.卧槽,又被运气套住了!”, “第14话14.大家都想要我的肾么?”, “第15话15.离谱的绑匪和营救者”, “第16话16.正义必将战胜邪恶!”, “第17话17.正义的补刀……”, …]
解决方法
重新排序
“第10话10.恶劣的开始也算开始”.replace(/(第([0-9]))/i,function(match,param,offset,string){
console.log(offset);//提取章节号10
})
新建一个数组保存章节名和章节号
var arr=[];
for(var i=0;i<files.length;i++){
files[i].replace(/(第([0-9]
))/i,function(match,param,offset,string){
arr.push({name:files[i],key:offset})
//console.log(offset);
});
}

然后根据key(章节号)排序
function compare(property){//排序函数
return function(a,b){
var value1 = a[property];
var value2 = b[property];
return value1 - value2;
}
}
arr=arr.sort(compare(‘key’))//排序结果保存下来
问题解决!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值