teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

Function\.prototype\.bind で第一引数に束縛する

2016/11/16 06:11

投稿

think49
think49

スコア18194

answer CHANGED
@@ -1,3 +1,5 @@
1
+ ### addEventListener で this オブジェクトに値を持たせる
2
+
1
3
  > function内の括弧にcheckが入ったままの状態がデフォルトで動かせない状況です。
2
4
 
3
5
  動かせない理由が不可解ですが、変数名を変更できないなら外部から参照する方法を変えるしかないですね。
@@ -21,4 +23,20 @@
21
23
  </script>
22
24
  ```
23
25
 
26
+ ### Function.prototype.bind で第一引数に束縛する
27
+
28
+ あまりコードを変えたくないのなら、`Function.prototype.bind` で引数束縛する方法もあります。
29
+
30
+ ```JavaScript
31
+ 'use strict';
32
+ var check = '0123456789';
33
+ document.getElementById('demo').onsubmit = function (check, event) {
34
+ alert(check);
35
+ alert(event);
36
+ return false;
37
+ }.bind(null, check); // Function.prototype.bind で第一引数を束縛
38
+ ```
39
+
40
+ ただ、内容的に引数束縛しなければならない理由も見つからないので、「checkを動かせない理由」や背景を明らかにした方が良いと思います。
41
+
24
42
  Re: arare17 さん