のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,644,934人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレ+ JavaScript の質問用スレッド vol.138 +

JavaScript覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

601 = :

じゃあ他人にできることができないことがある
お前はクソということだな

602 = :

>>600
昔はthisは(他のクラスベース言語だとインスタンスを表すのでそれに習って)
オブジェクトでないといけないという縛りがあったので
undefinedのときは仕方がないのでglobalThisに置き換えられてただけ

ES5になってその制限を緩くして
strict modeだとthisがプリミティブになることができるようになった

603 = :

javascript人気だけど仕様がクソすぎるよな

604 = :

いや。客観的に見てクソ加減は著名な言語の中で平均以下だよ

605 = :

JSで未だに問題になり得る隠しきれない残念な部分ってtypeof演算子くらいでしょ

606 = :

>>602
うん。それはそれでいいんだけど、
JavaScriptのforEachでthisがundefinedもしくはwindowになる(strictかどうかで挙動が変わる)
という仕様は何が便利なのかなーって話

607 = :

>>606
人の話聞いてる?
forEachなんかでのthisValueは当然メソッド呼び出しでもないんだしundefinedでしょ
ただsloppy modeだとundefinedがglobalThisに置き換えられるってだけ
置き換えられる理由は前述の通り

608 = :

>>606
返すものがないから

歴史的な問題でもあるから
詳細は90年代からESに至るまで仕様書順に読んできて
ここでこんなに引っ張るような話でもねえよ
仕様なんだから

609 = :

ん?ただ一言、forEachでundefinedになってることに
メリットはないって言ってくれれば良いんだけど?

610 = :

>>609
foreachにアロー関数渡す理由が無い
foreachには無名関数渡せば良いだけで、
変な事してる人に配慮して言語仕様を貶める事は俺には出来ないな

611 = :

>>609
お前言ってることがおかしいよ
undefined以外だったらおかしくてむしろデメリットになり得るでしょ
thisは何にでも使えるとはいえ「THIS」なのだから
ライブラリやらが何をどうしようと勝手だが標準には秩序というものがある

612 = :

こいつ第10引数は何故いつも開いてるんだ!
undefinedの代わりに何か便利なものを提供しろ!
とか言いそうだな

613 = :

>>611
> undefined以外だったらおかしくてむしろデメリットになり得るでしょ
どんなデメリット?

> thisは何にでも使えるとはいえ「THIS」なのだから
forEachの中では、必ず undefined (またはWindow)になるんです。
「THISなのだから」とはどういう意味?

614 = :

>>612
便利なものが思いつかないなら、何も提供しなくて良いのでは?

615 = :

やっぱjavascriptの仕様がおかしい
おかしくなかったら揉めない

616 = :

>>613
必ずなるなんて誰も言ってないでしょ
forEachやmapは第二引数で指定できるでしょ
コールバックのthisが何になるかなんてJSの秩序では自明でないでしょ
それに利便性も含めて指定できるようになってるんだから
指定されていない時はundefinedが自然でしょ
それが嫌なら指定すればいいだけなのだから

617 = :

> 指定されていない時はundefinedが自然でしょ

いいえ、コールバックのthisが何になるかなんてJSの秩序では自明ではありません。

618 = :

まあ呼び出しが側が自由に設定出来るからな。jQueryがそうしてるように。
※ただしアロー関数は除くww

619 = :

>>615
なんかおかしいことあるか?

620 = :

>>615
あと揉めてるっていうか
変な人が居着いちゃってるだけのような気が…

621 = :

>>617
自明じゃね?
何かのオブジェクトのメソッドとして実行されないから
thisキーワードを参照しても返すべきオブジェクトがないわけで

622 = :

>>621
だからそのクラスベース脳捨てろよ。
hoge(function() {console.log(this);});
//=> undefined
が自明だって?バカいうな。
hogeの定義はこうだ!
function hoge(cb) {cb.bind('うんこ')();}
だから、
//=> undefined
じゃなくて、
//=> うんこ
なんだよこのうんこ!
jQueryだってやってることは同じだバカ!

623 = :

>>622
日本語でok

624 = :

>>621
> 何かのオブジェクトのメソッドとして実行されないから
> thisキーワードを参照しても返すべきオブジェクトがないわけで

その理屈だと、DOMのイベントは、
DOM要素オブジェクトのメソッドとして実行されないから
undefinedになるべきなんですよ。

625 = :

そろそろまとめてくれないか

626 = :

>>617
お前足りん子か?
デフォルト値がない限り引数に指定できるものを指定してない=undefinedと扱われるのはJSの秩序だろうが

627 = :

>>624
DOMはあくまでDOMで外様の仕様だから
そこには別のルールがある

628 = :

>>626
お前の言う「JSの秩序」によると

element.addEventListener('click', function() {
// ここのthis は
}, false) ;

undefinedとして扱われるべきということになってしまう

629 = :

jQueryはあくまでDOM用のライブラリだから
DOMの仕様に準拠している。と考えればいいのか

630 = :

なんにも分かってないのな
恥ずかしい奴

631 = :

自称わかってる君、登場。何も言えずに、退場。

634 = :

>>628
一つ上くらい読め
足りん子

635 = :

JavaScriptのforEachでthisを要素にする方法ないのかな?

636 = :

今日書かれた内容くらいは読んでから書こうぜ

637 = :

>>635
これでええやろ。
Array.prototype.forEach2 = function(cb) {
this.forEach((v, i, a) => { cb.bind(v)(v, i, a); });
};
コールバックにはfunctionつかうんやで?
アローはthis変えさせてくれへんいけずやからな。
[5, 4, 3].forEach2(function() { console.log(this); });
5
4
3

638 = :

>>635
[5, 4, 3].forEach(Map.call, function() { console.log(this); });
5
4
3

639 = :

>>637は分かるけど
>>638がまったく分からない…
バカにも分かるよう解説してほしい

640 = :

forEachの第二引数はthisの指定だって既出じゃん

641 = :

それだけじゃ>>638は全然分かんないんだけと…
バカ舐めてない?

644 = :

>>640
> forEachの第二引数はthisの指定だって既出じゃん

だから、その第二引数でどうやって、各要素がthisとなるように
指定するんですか?って話なんですが

645 = :

>>644
どうやってって指定するのかって
>>638が例出してるじゃん

647 = :

読んだ結果俺は>>637でいいや…
>>638だと読み直すたびに毎回そこで引っ掛かる自信あるw

648 :

すみません、ちょっと質問なのですが、javascriptはスタックサイズの変更は出来ないのでしょうか?
再帰関数を実装したらスタックが溢れてしまいます。スタックサイズを設定出来るコンパイラオプションみたいなものはないのでしょうか?

649 = :

スタックサイズを無限にでもしたいのか?
無限に必要だろ。お前のコードは。

650 = :

>>649
わからんのなら黙っとけ


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について