从console.log读取?

时间:2014-08-07 14:43:34

标签: javascript console.log

我是网络开发的新手,所以如果我的问题看起来有点傻,请原谅。是否可以从浏览器中的控制台读取值作为JS中的变量。一个例子 : 我得到一个“ReferenceError:not not not defined”错误。我想创建一个依赖于该结果的if / else语句。这可能吗?

编辑:

我正在使用发送数据的AJAX调用,我可以在控制台中看到结果。这是我的代码:

$('#RequestBut').click(function () {
                $.ajax({
                    type: 'POST',
                    contentType: "application/json",
                    dataType: 'jsonp',
                    url: "http://www.google.com/recaptcha/api/verify",
                    data: {
                        privatekey: 'XXXXXXXXXXXXX',
                        remoteip: document.getElementById("ipaddress").innerHTML,
                        challenge: Recaptcha.get_challenge(),
                        response: Recaptcha.get_response()
                    }
                })

            });

我在控制台中看到了我要查找的结果。我想要的只是检索它。

4 个答案:

答案 0 :(得分:2)

您可以在开发人员工具控制台中运行任意Javascript(至少在Firefox和Chrome中),但这与“从控制台读取”不同。

要输入多行,请使用“shift + enter”而不是“enter”(将运行脚本)。

所以你可以在控制台中写字:

try {   /* press shift+enter here */
   bla_bla  /* press shift+enter here */
} catch(e) { console.log(e) }   /* press enter here */

这将捕获ReferenceError异常e

答案 1 :(得分:1)

如果您家中的管道有泄漏,您是否订购了大量水桶来接水,或者您只是关闭主水龙头?

您可以在源代码中捕获错误,如果是您正在调用的外部代码,则可以使用try { } catch( e ) {};来捕获错误。您无法读取已记录到控制台的内容,但您可能会覆盖日志记录功能并以此方式捕获所有内容。但是,这再一次将您带到我的开场白问题,您是否会寻求广泛的解决方案或特定任务?

更新:您无法捕捉到您想要的ajax调用,这就是donefail“承诺”回调的用途(documentation )。类似的东西:

            $.ajax({
                type: 'POST',
                contentType: "application/json",
                dataType: 'jsonp',
                url: "http://www.google.com/recaptcha/api/verify",
                data: {
                    privatekey: 'XXXXXXXXXXXXX',
                    remoteip: document.getElementById("ipaddress").innerHTML,
                    challenge: Recaptcha.get_challenge(),
                    response: Recaptcha.get_response()
                },
                done: function( data, statusString, jqXHR ) {
                     // do something with data here
                },
                fail: function( jqXHR, textStatus, errorThrown ) {
                     // do something with the error here
                }
            })

答案 2 :(得分:0)

是的,可以从浏览器JavaScript控制台读取变量。我想你正在使用chrome。您会遇到这种错误,因为您引用的变量无法访问。可能是您尚未将其声明为全局变量,或者您未能声明变量。您可以通过编写

来声明全局变量
<script>
var myVariable="Hello World";
</script>
你的html文件中的

。或者,如果您正在编写javascript,则只需排除脚本标记。 然后在JavaScript控制台中,您只需在控制台中编写myVariable即可读取myVariable的值。

答案 3 :(得分:0)

要阅读console.log,请console.log=function(e) {document.write(e);}