如何从Chrome的Javascript控制台获取输入内容?
问题描述:
有没有办法以编程方式从Google Chrome的Javascript控制台获取输入,类似于Firefox中的readline()
?如何从Chrome的Javascript控制台获取输入内容?
答
对不起,无法在Chrome JS控制台工作,只是工作在REPL从repl.it
从repl.it例子:
console.log("Enter your name:");
console.read(function(name) {
console.log('Your name is ' + name + '.');
});
答
我们能做的就是挂钩的console.log所以无论何时它记录我们可以访问的东西,否则就没有像firefox那样的直接方法,这对于我们简单的单行代码来说是可能的。
var tempStore = [];
var oldLog = console.log;
console.log = function() {
tempStore.push(arguments);
oldLog.apply(console, arguments);
}
答
这是考虑输入的间接方法:
声明一个函数在JavaScript:
function your_command_here() {
//code
}
作为Chrome的控制台基本上提供了与网页的内容进行通信,如JavaScript变量的方法,函数等,因此将函数声明为可接收的命令可以是一个选项。
在控制台中,用于提供输入时,用户应输入:
your_command_here()
另一个解决方法是:
声明一个函数:
function command(var cmnd) {
switch(cmnd) {
case "command1":
//code
break;
}
}
,以便用户可以(更方便地)类型:
命令(“用户的命令在这里”)
您可以在控制台中键入要评估的代码, d会立即评估。例如,尝试在控制台中输入alert(“Hello World!”);'。这不是您的问题的完整答案,但它是一个开始的好地方。 –