繁体   English   中英

如何从 JavaScript 中的文件系统读取方法对文件中的数据进行排序?

[英]how to sort data in the file from file System read method in JavaScript?

javascript中read filesystem方法获取的数据如何排序

fs.readFile('node1.txt',function(err,data){
   if(err){
      return console.log(err)    
   }

   data.toString().toLocaleUpperCase.sort(function (first, second){
      if(first<second){
         return -1
      } else if(first>second) {
         return 1
      } else {
         return 0
      }
   })
}

错误:类型错误: TypeError: sort is not a function

基本上,您的代码在这里尝试使用data.toString().toLocaleUpperCase.sort行执行的操作是:

获取数据,使用toString()方法将其转换为字符串并对字符串进行排序。

这里的问题是您正在尝试对字符串进行排序,而在 Javascript 中, String没有sort方法。

你应该做的是使用split方法将你的字符串转换成一个数组(文档在这里)

例如,如果你想将文件排序为单词:

data.toString().split(' ').sort(function (first, second){
   if(first.toLocaleUpperCase() < second.toLocaleUpperCase()){
      return -1
   } else if(first.toLocaleUpperCase() > second.toLocaleUpperCase()){
      return 1
   } else{
      return 0
   }
})

toLocalUpperCase()是 function 而不是属性。

尝试data.toString().toLocaleUpperCase().sort(...)

注意额外的括号

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM