gpt4 book ai didi

javascript - 为什么我得到 process.stdin undefined

转载 作者:搜寻专家 更新时间:2023-11-01 00:14:36 24 4
gpt4 key购买 nike

我试图用下面的代码做一个简单的 map (唯一重要的部分是最后两行)

/**
* Mapper chunk processing function.
* Reads STDIN
*/
function process () {
var chunk = process.stdin.read(); // Read a chunk
if (chunk !== null) {
// Replace all newlines and tab chars with spaces
[ '\n', '\t'].forEach(function (char) {
chunk = chunk.replace(new RegExp(char, 'g'), ' ');
});

// Split it
var words = chunk.trim().split(' ');
var counts = {};

// Count words
words.forEach(function (word) {
word = word.trim();

if (word.length) {
if (!counts[word]) {
counts[word] = 0;
}

counts[word]++;
}
});

// Emit results
Object.keys(counts).forEach(function (word) {
var count = counts[word];
process.stdout.write(word + '\t' + count + '\n');
});
}
}
process.stdin.setEncoding('utf8');
process.stdin.on('readable', process); // Set STDIN processing handler

但我收到以下错误:

process.stdin.setEncoding('utf8');
^
TypeError: Cannot read property 'setEncoding' of undefined

我根本无法理解它的原因,而且我在 Internet 上找不到任何关于此的信息。为什么我的 process.stdin 未定义?有什么想法吗?

最佳答案

您使用名为 process 的函数隐藏了 process 模块。

我相信您调试它的最佳尝试是 console.log(process) 并发现它看起来不像您期望的那样。

关于javascript - 为什么我得到 process.stdin undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33752210/

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