JavaScript函数称为"动作"

nee*_*ing 6 javascript types function

有人可以解释为什么一个名为"action"的函数只要按钮被表单标签包围就会在下面的代码中创建一个类型错误.我认为这会导致与表单的action属性发生奇怪的冲突,但我想知道为什么它会在这个范围内发生("action"没有以任何其他方式定义):

<html>
<head>
    <script type="text/javascript">
        function action() {
            alert('test');
        }
    </script>
</head>
<body>
    <form>
        <input type="button" value="click" onClick="action();">
    </form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

Dav*_*und 5

在表单内部,action是对表单操作的字符串引用.如果您更改了onclick,alert(action)您将获得表单的操作(对于您的特定表单,它将是一个空字符串).

以相同的方式,form将是对表单的引用,method并将包含表单方法,如果您在表单中使用它们.window.action仍然会参考你的功能.