【发布时间】:2020-09-23 01:42:45
【问题描述】:
我有一个名为 test.txt 的文件,其数据为“qwe abc xyz”
而我的代码如下:
let data = fs.readFileSync('test.txt', 'utf8')
console.log(data)
data = data.substring(2) //doing this because first two chars are garbage
console.log(data)
let data2 = data.replace('abc', 'Decimal');
console.log(data2)
这段代码的输出:
��qwe abc xyz
qwe abc xyz
qwe abc xyz
为什么我的 abc 没有被 data2 中的 Decimal 替换?我也尝试过以下方法:
let data = fs.readFileSync('test.txt', 'utf8')
console.log(data)
data = data.substring(2) //doing this because first two chars are garbage
console.log(data)
let data2 = data.replace(/abc/g, 'Decimal');
console.log(data2)
它仍然提供相同的输出。可能是什么问题?会不会跟sync/async有关?
【问题讨论】:
-
您的两个代码在我的编辑器上都可以正常工作
-
这很奇怪。你得到的输出是什么?
-
我在我的编辑器中对其进行了测试,它也可以正常工作????。您可以在 let data = ... 之后进行调试。了解它是如何工作的
-
??qwe abc xyz qwe abc xyz qwe Decimal xyz 以上输出是从我的控制台复制的
标签: javascript node.js string replace