在一个HTML文件,我有以下几点:JavaScript变量名和HTML输入名称属性:namespace collision?
<input type="..." name="myInput1" />
在相应的JS文件我有以下变量模糊之后,将持有该输入的字符串值:
var myInput1;
是否有任何有这两个相同的名字的问题?我猜测命名空间是分开的,所以它没问题。
在一个HTML文件,我有以下几点:JavaScript变量名和HTML输入名称属性:namespace collision?
<input type="..." name="myInput1" />
在相应的JS文件我有以下变量模糊之后,将持有该输入的字符串值:
var myInput1;
是否有任何有这两个相同的名字的问题?我猜测命名空间是分开的,所以它没问题。
简短的回答,没有任何问题。
简短的回答是,的确没有。但是,它也很大程度上取决于你如何使用变量。让我们考虑您使用JavaScript来验证该变量的设置如下:
if(myInput1) {do something}
如果您还决定将ID设置为相同的名称如下(因为你没有指定,它可以是任何东西):
<input type="myInput1" name="myInput1" />
您的变量为myInput1将被设置为包含DOM元素,并不会是空的了。
JS和HTML之间的这种链接不仅有趣,而且可以用于创建一个利用,如Postcards from the post-XSS world的3.1.2节所述(这就是我的想法 - 即使这样也可以工作,即使文章是从2011年)。