1

次があるとします。

<input type="button" name="button" value="Validate Payment" onclick="Validate()" />

onclick に入れることができます:

  1. onclick="Validate"
  2. onclick="Validate()"
  3. onclick="Validate();"

私の質問は、これら3つの実装の違いは何ですか

4

4 に答える 4

6
  1. 関数を実行せず、関数を返します (try: console.log(Validate))
  2. 関数を実行します。
  3. #2とまったく同じように、関数を実行します。

したがって、機能的には #2 と #3 の間に違いはありません。

jbabeyによるこのコメントに記載されているように、インライン イベント ハンドラは悪い習慣であることに注意してください。

于 2012-11-28T16:42:59.093 に答える
0

onclick = "Validate();"の違い onclick = "Validate()"は存在しません。javascriptではセミコロンはオプションであるため、コードは同じになります。

onclick = "Validate"と他の2つの違いを理解するには、Javascriptでの括弧の使用について少し理解する必要があります。

基本的に、

onclick="Validate()" 

関数「Validate」を実行し、その関数が返すものは何でも返します。

onclick="Validate" 

実際の関数「Validate」を返します。

詳細な説明については、こちらを参照してください:javascript構文:関数呼び出しと括弧の使用

于 2012-11-28T16:47:48.500 に答える
-2

それらの間に違いはありません。

于 2012-11-28T16:42:20.093 に答える