node js 过滤空白行

data.trim().split('\n').filter(user => user); 只过滤文件开头和结尾的空白行。

data.split('\n').map(token => token.trim()).filter(token => token); 这种方法不仅移除了文件开头和结尾的空白行,还确保了每一行内部的多余空白也被清理掉。此外,它不会遗漏中间的空白行(如果有的话),因为trim()是在分割之后应用于每一行的。

java 复制代码
export function readToken(filePath) {
    return new Promise((resolve, reject) => {
        fs.readFile(filePath, 'utf8', (err, data) => {
            if (err) return reject(err);

            const tokens = data.split('\n').map(token => token.trim()).filter(token => token);
            
            if (tokens.length > 0) {
                resolve(tokens);  
            } else {
                reject('No tokens found');
            }
        });
    });
}
相关推荐
十五年专注C++开发26 分钟前
Qt之QScopedPointer、QScopeGuard、QScopedValueRollback使用及源码解读
开发语言·c++·qt·qscopedpointer·qscopeguard
fox_lht29 分钟前
13.3.测试的组织方式
开发语言·后端·rust
一天 24h31 分钟前
Vue3父子组件传值:从零到精通
前端·javascript·vue.js·pycharm·npm·学习方法
大家的林语冰38 分钟前
CSS 新函数上市,一行代码让文本自动变色,无需 JS 也能符合 W3C 无障碍对比度标准
前端·javascript·css
爱勇宝38 分钟前
前端工程师的下一站:不是失业,而是 AI Engineer
前端·javascript·架构
小雨下雨的雨1 小时前
电池电量检测工具 - 鸿蒙PC用Electron框架技术实现详解
前端·javascript·华为·electron·鸿蒙·鸿蒙系统
·白小白1 小时前
C++ STL 容器 list 底层结构详解
开发语言·c++·list
RSTJ_16251 小时前
PYTHON+AI LLM DAY SIXTY-SIX
服务器·开发语言·python
Chase_______1 小时前
【Java基础 | 11】异常处理进阶:throw、throws、自定义异常与异常链讲清楚
java·开发语言·python
DFT计算杂谈1 小时前
VASP 磁性结构可视化:一键生成完美 VESTA / MCIF
java·前端·css·html·css3