需要解释此javascript代码

时间:2012-02-26 02:42:38

标签: javascript

我上周开始学习JavaScript,昨天我看到了这段代码,我做了一些关于它的研究,但现在我无法弄清楚它的作用:

var y=document.forms['post'];
var x=y.message.value;
x=x.replace(/</gi,'(').replace(/\</gi,'(');
y.message.value=x;

4 个答案:

答案 0 :(得分:1)

此代码从名为message的表单中的名为post的元素中获取值。然后,它会将所有<替换为(,并将该值重新置于message

答案 1 :(得分:1)

通过将所有input替换为<来清除表单元素((中的文字)中的HTML(来自其外观)...

......然后再做一次;它可能意味着然后用>替换所有)以提高可读性。

答案 2 :(得分:0)

以下是我对它的理解:

  1. 变量y包含名称为post
  2. 的表单
  3. 变量x保存标记value的{​​{1}}属性。
  4. 替换message并将<放入消息。
  5. 将新邮件标记(分配给原始x

答案 3 :(得分:0)

在第一行之后,y引用了名称为“post”的文档表单。

在第二个之后,x具有name =“message”的字段的内容。

第三行使用正则表达式用左括号替换每个左尖括号,第二行对左前尖括号用反斜杠替换。这似乎是多余的,因为&lt;在正则表达式中没有特殊含义;在这种情况下,“i”修饰符也没用。

最后一行将修改后的消息分配回表单。

此代码应该防止将HTML元素注入“消息”字段,但是这样做的方式相当粗糙。