質問編集履歴
2
aaaaa
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
バインドスコープ
|
1
|
+
バインドスコープコンソール
|
body
CHANGED
@@ -1,8 +1,6 @@
|
|
1
1
|
```
|
2
2
|
|
3
3
|
```
|
4
|
-
初めのクリック時は「いいいい」とコンソールされますが、
|
5
|
-
次のスクロール時は「ああああ」とコンソールされます。
|
6
|
-
|
4
|
+
初コンソールコンソールコンソールコンソールコンソールvの変数変更がスクロール時にも影響します。
|
7
5
|
|
8
6
|
なぜ、このようなことが起こるのか、どのような原理が働いているのでしょうか?
|
1
ああああ
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
バインド
|
1
|
+
バインドスコープが制限される?
|
body
CHANGED
@@ -1,18 +1,8 @@
|
|
1
1
|
```
|
2
|
-
|
2
|
+
|
3
|
-
$(window)
|
4
|
-
.on('click',function(){
|
5
|
-
var a = "いいいい";
|
6
|
-
console.log(a);
|
7
|
-
}.bind(this))
|
8
|
-
.on('scroll',function(){
|
9
|
-
console.log(a);
|
10
|
-
});
|
11
3
|
```
|
12
4
|
初めのクリック時は「いいいい」とコンソールされますが、
|
13
5
|
次のスクロール時は「ああああ」とコンソールされます。
|
14
|
-
つまりクリックファンクション内での変数の変更が、外に影響を及ぼさなくなっており、
|
15
|
-
これは**bind(this)**することによって発生しています。
|
16
|
-
|
6
|
+
つまりクリ無ければ、クリック時の変数変更がスクロール時にも影響します。
|
17
7
|
|
18
8
|
なぜ、このようなことが起こるのか、どのような原理が働いているのでしょうか?
|