IDF实验室:WEB_超简单的js题

来源:互联网 发布:网络梗 编辑:程序博客网 时间:2024/06/05 11:31

题目链接:http://ctf.idf.cn/index.php?g=game&m=article&a=index&id=42

 

打开网页:


查看源代码  发现这一部分




将代码复制到控制台 把eval改为console.log运行




这时把e739b817fc23fd674d458210509e2744复制到输入框中 点击走你就出现答案啦!


上一步还可以选择加密解密工具 http://tool.chinaz.com/Tools/Escape.aspx   ,把代码复制过去,显示如下:


从这里也可得知e739b817fc23fd674d458210509e2744 ,最终得出答案:



注:

1>unescape() 函数可对通过 escape() 编码的字符串进行解码

2>eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码,详见http://www.w3school.com.cn/jsref/jsref_eval.asp




3>关于console.log()详见http://www.jb51.net/article/48233.htm

对于JavaScript程序的调试,相比于alert(),使用console.log()是一种更好的方式,原因在于:alert()函数会阻断JavaScript程序的执行,从而造成副作用;而console.log()仅在控制台中打印相关信息,因此不会造成类似的顾虑

console.log()可以接受任何字符串、数字和JavaScript对象。与alert()函数类似,console.log()也可以接受换行符\n以及制表符\t。console.log()语句所打印的调试信息可以在浏览器的调试控制台中看到。不同的浏览器中console.log()行为可能会有所不同

与alert()函数类似,console.log()也可以接受变量并将其与别的字符串进行拼接:

复制代码代码如下:
//Use variable
var name = "Bob";
console.log("The name is: " + name);

与alert()函数不同的是,console.log()还可以接受变量作为参数传递到字符串中,其具体语法与C语言中的printf语法一致:
复制代码代码如下:
//Use parameter
var people = "Alex";
var years = 42;
console.log("%s is %d years old.", people, years);

上述代码的执行结果为:”Alex is 42 years old.”


0 0
原创粉丝点击