gpt4 book ai didi

JavaScript 变量的值会自动转义

转载 作者:行者123 更新时间:2023-12-03 05:36:27 24 4
gpt4 key购买 nike

<script>
test('test.php?a=%3D');//alert(1)
function test(a){
alert(a);
if(a == 'test.php?a=%3D'){
alert(1);
}else{
alert(2);
}
}
</script>
<a href="javascript:test('test.php?a=%3D')">aaa</a > <!-- alert(2) -->

为什么两种不同的方式会得到不同的结果?谁能帮我?非常感谢!

最佳答案

让我们分析一下这两种情况:

  1. test('test.php?a=%3D');//alert(1) test.php?a=%3D被视为变量。

  2. <a href="javascript:test('test.php?a=%3D')">aaa</a > <!-- alert(2) --> test.php?a=%3D被视为带有查询字符串和 %3D 的 URL转换为= 。所以完整的结果是test.php?a==

这就是这两个值不同的原因。再次考虑下面显示的代码 - test.php?a=%3D被视为变量,因此结果为 alert(1) .

<input type="button" value="Click" onclick="javascript:test('test.php?
a=%3D')"/>

关于JavaScript 变量的值会自动转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40712475/

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