Javascript:有啥方法可以清除用户输入的历史记录?

Posted

技术标签:

【中文标题】Javascript:有啥方法可以清除用户输入的历史记录?【英文标题】:Javascript: Is there any way to clear history of user input?Javascript:有什么方法可以清除用户输入的历史记录? 【发布时间】:2019-10-09 04:06:48 【问题描述】:

我正在创建一个 Simon Says 游戏,其中随着用户获得正确的模式,模式会逐渐变长,但输入历史显示他们之前的模式输入。如何清除此历史记录?

此代码位于 CodeHS 网站上。我已经研究并尝试过 console.clear();, clear();和 console.API.clear();,但它似乎不起作用。

这是获取用户输入的代码部分。

//green red blue yellow
var generatedPattern = "grby"

function getUserInput()
    /*User input of the last round gets saved which shows them 'grb', allowing 
    the user to look back at their previous guess to easily guess the 
    next pattern*/
    guess = readLine("Input guess here: (example: ybbg)");
    if(guess == generatedPattern)
        return true;
    else
        return false;
    

我希望使用 clear(); 清除日志;或console.clear();,但它什么也没做。

【问题讨论】:

.clear() 通常会清除控制台,而不是输入历史记录。通常甚至不是由您的程序管理,而是由终端本身管理。 为什么在 DOM 中使用控制台而不是 <input> 字段? @Barmar 可能是因为它是一个 cli 应用程序(node.js),而不是在浏览器中运行? (当然最好提前说明这一点) 是的,需要有人告诉那些将autocomplete=off 放在答案中的人。 查看***.com/q/24037545/1048572 的类似问题 【参考方案1】:

您可以执行一个自定义函数来输出 ANSI 转义字符:

const clearTerminal = () => process.stdout.write('\033c')

(请注意,应该有更好的方法来处理您的程序,这个辅助函数只会清除您的整个窗口,这可能不是您想要的)

【讨论】:

以上是关于Javascript:有啥方法可以清除用户输入的历史记录?的主要内容,如果未能解决你的问题,请参考以下文章

有啥方法可以在运行时屏蔽进入 jText 区域的值,如果一直按下退格键,应该清除内容

Javascript 在按钮单击时清除表单字段

有啥方法可以清除已经从安卓设备手动捕获的位置详细信息?

有啥方法可以检测系统是不是清除了 Caches 目录?

如何清除文本输入并在JavaScript中重新聚焦

javascript清除数组