如果我在main.js的文件中有全局变量a = 5;
,并且我将这个变量与AJAX一起发送到PHP,那么是否可以从控制台或以某种方式从外部更改这个变量,并让AJAX发送错误的参数?
这里有一个例子:
var init = {
id: null,
setId: function(i){
this.id = i;
alert(this.id);
},
callAjax: function(){
alert(this.id);
}
};
如果我有这个,还有可能改变吗?
如果它可以从控制台访问(因为您声明它是一个全局变量),则可以从控制台修改它,只需编写a=1
或任何东西。
如果此变量是全局变量,则它是可能的。
为了防止它,您必须使用闭包
是的,您可以打开浏览器的控制台(对于Chrome:PC上的Ctrl+Shift+I,Mac上的Command+Shift)并切换到"控制台"选项卡。然后通过设置a=<whatever you want>
编辑全局变量。
因为它在全局范围内,所以您可以在AJAX请求之前更改它。