私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.119 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
無名関数に名前を付けるって
var a = function(){
var a = function(){
無名関数に名前を付けるって
var a = function(){
};
ってことだろ
はい論破
var a = function(){
};
ってことだろ
はい論破
無名関数って名前が良くないよな
var a = function hoge(){};
これも無名関数だろ?
var a = function hoge(){};
これも無名関数だろ?
>>647の言いたい事は↓これ
addEventListener("click", function hoge(){
...
removeEventListener("click, hoge); // ○
});
removeEventListener("click, hoge); // × hogeが見つからない
2度呼ばせないようにする事には使える
addEventListener("click", function hoge(){
...
removeEventListener("click, hoge); // ○
});
removeEventListener("click, hoge); // × hogeが見つからない
2度呼ばせないようにする事には使える
>>654
大体そうだけど、元のコードを尊重すると
var func = function(obj){
return function foobar(){
console.log(obj);
obj.removeEventListener('click', foobar);
}
};
を想定してた
あと
(function me() {
:
:
me();
})();
みたいな即時関数で再帰使いたい時に使わん?
大体そうだけど、元のコードを尊重すると
var func = function(obj){
return function foobar(){
console.log(obj);
obj.removeEventListener('click', foobar);
}
};
を想定してた
あと
(function me() {
:
:
me();
})();
みたいな即時関数で再帰使いたい時に使わん?
addEventListener('click', a.func)
こういう感じのオブジェクトの中に関数が入った?関数を指定するのはダメで
addEventListener('click', func)
って関数はOKっていうのをどこかで読んだんですが理由教えてください
こういう感じのオブジェクトの中に関数が入った?関数を指定するのはダメで
addEventListener('click', func)
って関数はOKっていうのをどこかで読んだんですが理由教えてください
無名関数式を名前付き関数式にしてるわけだから「名前を付ける」という言葉は間違ってないな
名前付き関数式の知名度はもう少しあがってもいい
名前付き関数式の知名度はもう少しあがってもいい
JavaScriptで無名関数という言葉は使うべきじゃない
なぜならそこでは無名性には大した意味はないから
はい論破
なぜならそこでは無名性には大した意味はないから
はい論破
無名関数と言わず、単に関数式と言えばいい
それに名前があろうがなかろうが、関数の外部には影響がないんだから
それに名前があろうがなかろうが、関数の外部には影響がないんだから
■A
var test = document.getElementById('test');
var hoge = {};
hoge.print = function(){
console.log(this); // divを参照する
};
test.addEventListener('click', hoge.print, false);
■B
var test = document.getElementById('test');
var hoge = function(){
console.log(this); // divを参照する
};
test.addEventListener('click', hoge, false);
どっちも変わらなかった
var test = document.getElementById('test');
var hoge = {};
hoge.print = function(){
console.log(this); // divを参照する
};
test.addEventListener('click', hoge.print, false);
■B
var test = document.getElementById('test');
var hoge = function(){
console.log(this); // divを参照する
};
test.addEventListener('click', hoge, false);
どっちも変わらなかった
JavaScriptは単なる関数なのにthisにアクセス出来るけど、そのthisは呼び出す側の都合で何にでも設定出来る
関数内でthisにアクセスする時はthisが何なのか気にする必要がある
関数内でthisにアクセスする時はthisが何なのか気にする必要がある
var test = document.getElementById('test');
var hoge = {};
hoge.print = function(){
var _this = hoge.print.call(hoge);
console.log(_this);
};
test.addEventListener('click', hoge.print, false);
Uncaught RangeError: Maximum call stack size exceeded ってなりました
どうやってthisをhogeにできますか?
var hoge = {};
hoge.print = function(){
var _this = hoge.print.call(hoge);
console.log(_this);
};
test.addEventListener('click', hoge.print, false);
Uncaught RangeError: Maximum call stack size exceeded ってなりました
どうやってthisをhogeにできますか?
>>666
関数内部の質問に対して何を言ってるんだか
関数内部の質問に対して何を言ってるんだか
>>673
ああそう
で、関数式に名前を付けるのと付けないので異なる処理をすることを説明するときにもひとくくりに関数式と呼ぶのかね?
正式に言うなら「名前付き関数式」「無名関数式」でいいと思うがね
あの文脈なら「無名関数に名前を付ける」で十分に意味が通じるし、関数式ではむしろ意味が通らない
ああそう
で、関数式に名前を付けるのと付けないので異なる処理をすることを説明するときにもひとくくりに関数式と呼ぶのかね?
正式に言うなら「名前付き関数式」「無名関数式」でいいと思うがね
あの文脈なら「無名関数に名前を付ける」で十分に意味が通じるし、関数式ではむしろ意味が通らない
素直に知らないって言えばいいのに
こいつらいっつも何がしたいかーとか何を求めているかーとかって言い訳するよな
聞き飽きたはw
こいつらいっつも何がしたいかーとか何を求めているかーとかって言い訳するよな
聞き飽きたはw
顧客の希望を聞かずにいきなり自分のお勧めを紹介する人は信用できない
判断基準が適当かつ恣意的にすぎる
判断基準が適当かつ恣意的にすぎる
>>670
thisはhogeになってるよw
それ以前に他の場所、関数の戻り値とかの
もっと初歩的な所が理解出来てないだけ。
ブラウザのデバッガ機能のステップ実行とか
使って動きを一行ずつ確認してみれ
thisはhogeになってるよw
それ以前に他の場所、関数の戻り値とかの
もっと初歩的な所が理解出来てないだけ。
ブラウザのデバッガ機能のステップ実行とか
使って動きを一行ずつ確認してみれ
>>680
お前は馬鹿の一つ覚えみたいに同じことばっかりいうよなw
お前は馬鹿の一つ覚えみたいに同じことばっかりいうよなw
>>683
理解力の低い人に対しては致し方ないな
理解力の低い人に対しては致し方ないな
ライブラリを作る時にはこうしたら便利だよ的なことが書かれている本があれば教えて下さい
JavaScriptパターンにそれっぽいことが書かれてるようなので
再読してみます
再読してみます
>>670
呼び出し元の
test.addEventListener('click', hoge.print, false);
を変えないということならば
hoge.print = function(){
console.log(this);
}.bind(hoge);
こうだな
呼び出し元の
test.addEventListener('click', hoge.print, false);
を変えないということならば
hoge.print = function(){
console.log(this);
}.bind(hoge);
こうだな
>>632
悪意のあるスクリプトタグが追加されて、
この悪意あるスクリプトは見えないiframeを追加し、RIG exploit kitをホスティングするWebサイトにリダイレクトする。
最終的にはドライブバイダウンロードによりマルウェアが閲覧者のコンピューター上で実行されるという。
ここ最近jQueryの公式にアクセスした奴は
使ってるPCと、その間アクセスしたサーバー/システムのチェックとパスワードの変更をしておけよ
悪意のあるスクリプトタグが追加されて、
この悪意あるスクリプトは見えないiframeを追加し、RIG exploit kitをホスティングするWebサイトにリダイレクトする。
最終的にはドライブバイダウンロードによりマルウェアが閲覧者のコンピューター上で実行されるという。
ここ最近jQueryの公式にアクセスした奴は
使ってるPCと、その間アクセスしたサーバー/システムのチェックとパスワードの変更をしておけよ
>>684
お前は同レベルってことに気づいてないのか・・・
お前は同レベルってことに気づいてないのか・・・
<div id="root">
<div>
aaaaaaa
<p>bbbbbbbbbbbb</p>
</div>
<div>c</div>
</div>
var root = document.getElementById('root');
root.addEventListener('click', function(e){
console.log(this);
console.log(e.target.innerHTML);
console.log(e.target);
console.log(e);
}, false);
#rootをgetElementByIdで取ってイベントリスナーでClickした時に
子要素のどこをクリックしても頂点の#rootが欲しいんですが
e.targetとeをみても取れなさそうでした
どうやれば#rootにたどれますか?
<div>
aaaaaaa
<p>bbbbbbbbbbbb</p>
</div>
<div>c</div>
</div>
var root = document.getElementById('root');
root.addEventListener('click', function(e){
console.log(this);
console.log(e.target.innerHTML);
console.log(e.target);
console.log(e);
}, false);
#rootをgetElementByIdで取ってイベントリスナーでClickした時に
子要素のどこをクリックしても頂点の#rootが欲しいんですが
e.targetとeをみても取れなさそうでした
どうやれば#rootにたどれますか?
Backbone.Routerは通信をフックする機能のようですが、
通信先を書き換えることはできないんですか?
通信先を書き換えることはできないんですか?
>>689
ドライバって実行ファイルだろ?
普通警告出るし、実行しなけりゃ問題ないんじゃないの?
もしCDNのjqueryをこっそり改造して変数の内容をどこかに転送
とかしてたら恐ろしい被害が出ただろうな
ドライバって実行ファイルだろ?
普通警告出るし、実行しなけりゃ問題ないんじゃないの?
もしCDNのjqueryをこっそり改造して変数の内容をどこかに転送
とかしてたら恐ろしい被害が出ただろうな
>>692
> On Internet Explorer 6 through 8, the event model is different.
> Event listeners are attached with the non-standard element.attachEvent method.
この文章が気になりました。
IE8のサポート終了って2016年1月なんですよね。
> On Internet Explorer 6 through 8, the event model is different.
> Event listeners are attached with the non-standard element.attachEvent method.
この文章が気になりました。
IE8のサポート終了って2016年1月なんですよね。
>>695
IE8てまだサポートしてたのか。
IE8てまだサポートしてたのか。
>>696
サポートどころかこんなデータもあるぐらいだよ。
IE8 50ヶ月連続1位 - 4月ブラウザシェア 2014/05/07
http://news.mynavi.jp/news/2014/05/07/066/
http://marketshare.hitslink.com/browser-market-share.aspx?qprid=2&qpcustomd=0
Internet Explorer 8.0 21.40%
Internet Explorer 11.0 17.54%
Chrome 36.0 11.05%
Firefox 31 10.51%
Internet Explorer 9.0 9.24%
Internet Explorer 10.0 6.18%
Internet Explorer 6.0 3.33%
statcounterの方ではIE11の方が多いが、順位では5番目に利用者が多いブラウザ。
http://gs.statcounter.com/#all-browser_version-ww-monthly-201308-201408
サポートどころかこんなデータもあるぐらいだよ。
IE8 50ヶ月連続1位 - 4月ブラウザシェア 2014/05/07
http://news.mynavi.jp/news/2014/05/07/066/
http://marketshare.hitslink.com/browser-market-share.aspx?qprid=2&qpcustomd=0
Internet Explorer 8.0 21.40%
Internet Explorer 11.0 17.54%
Chrome 36.0 11.05%
Firefox 31 10.51%
Internet Explorer 9.0 9.24%
Internet Explorer 10.0 6.18%
Internet Explorer 6.0 3.33%
statcounterの方ではIE11の方が多いが、順位では5番目に利用者が多いブラウザ。
http://gs.statcounter.com/#all-browser_version-ww-monthly-201308-201408
サイトによっては、アクセス解析の結果、IE8が少なくないこともあるな
あと残念なのが、ユーザではなく客が仕事場で使っているのがIE8だから
って理由でそれに合わせることも少なくない
あと残念なのが、ユーザではなく客が仕事場で使っているのがIE8だから
って理由でそれに合わせることも少なくない
>>695
そもそも、IE8をサポートするなら addEventListener を使えないだろう
(addEventListener 前提の質問だから考慮はしなかったが)
IE8を考慮するならクロージャに閉じ込めたスコープで Function#call でも使えばいい
そもそも、IE8をサポートするなら addEventListener を使えないだろう
(addEventListener 前提の質問だから考慮はしなかったが)
IE8を考慮するならクロージャに閉じ込めたスコープで Function#call でも使えばいい
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/1/25 12:46
- + JavaScript の質問用スレッド vol.110 + (1001) - [97%] - 2013/10/13 14:01
- + JavaScript の質問用スレッド vol.129 + (926) - [97%] - 2017/7/27 13:45
- + JavaScript の質問用スレッド vol.129 + (981) - [97%] - 2016/5/5 8:16
- + JavaScript の質問用スレッド vol.118 + (1002) - [97%] - 2014/8/29 22:30
- + JavaScript の質問用スレッド vol.117 + (1009) - [97%] - 2014/8/5 3:30
- + JavaScript の質問用スレッド vol.116 + (1002) - [97%] - 2014/7/1 0:45
- + JavaScript の質問用スレッド vol.115 + (1001) - [97%] - 2014/5/29 16:16
- + JavaScript の質問用スレッド vol.114 + (1001) - [97%] - 2014/5/3 10:45
- + JavaScript の質問用スレッド vol.112 + (1001) - [97%] - 2013/11/27 16:46
- + JavaScript の質問用スレッド vol.111 + (1001) - [97%] - 2013/11/4 6:00
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/3/15 21:30
- + JavaScript の質問用スレッド vol.139 + (1001) - [97%] - 2019/5/27 15:15
- + JavaScript の質問用スレッド vol.109 + (1001) - [97%] - 2013/10/7 13:16
- + JavaScript の質問用スレッド vol.121 + (1001) - [95%] - 2015/1/1 18:30
- + JavaScript の質問用スレッド vol.125 + (1001) - [95%] - 2015/10/7 17:45
- + JavaScript の質問用スレッド vol.124 + (1001) - [95%] - 2015/7/16 1:30
トップメニューへ / →のくす牧場書庫について