1 名前:デフォルトの名無しさん [2011/08/26(金) 13:32:13.80 ] ないようなので立ててみました 初心者から上級者まで気軽にどうぞ テンプレは今後決めていってください 関連スレ ★★Java質問・相談スレッド147★★ hibari.2ch.net/test/read.cgi/tech/1312958339/ Eclipse統合M31【Java/C++/Ruby/Python/Perl】 hibari.2ch.net/test/read.cgi/tech/1295886572/
862 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:05:50.26 ] >>859 クロージャにスコープは関係ありありだろ ちなみに俺は817とかじゃないが
863 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:08:02.57 ] >>858 どの本です? www.amazon.co.jp/s/ref=nb_sb_noss?__mk_ja_JP=%83J%83%5E%83J%83i&url=search-alias%3Dstripbooks&field-keywords=JavaScript%82%C9%82%E6%82%E9&x=6&y=16
864 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:08:52.00 ] >>859 843 名前:デフォルトの名無しさん[sage] 投稿日:2012/02/20(月) 00:49:11.23 >>842 クロージャ。コレでわからなきゃ半年ROMってろ
865 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:09:44.48 ] >>863 www.amazon.co.jp/dp/4873114888
866 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:18:41.61 ] ほかの言語じゃあまり見られないような議論だな やっぱり自由度が高いからか。
867 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:20:27.91 ] >>862 関係ないとはいわんが、前進してないだろう >>834 で「>>810 で答えが出てる」と指摘を受けておきながら「クロージャだ、即時関数だ」と言葉遊びを続ける理由がわからん
868 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:22:46.10 ] >>834 =>>862 なんだが。。。
869 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:24:48.10 ] >>810 はwhileじゃないじゃん。
870 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:28:23.38 ] whileを>>810 っぽく書こうとするとこうなるな。 (function() { var condition; while(condition) (function() { condition = ?; // 条件書き換え })(); })();
871 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:29:40.77 ] 俺が整理してやるよ Javascriptでスコープいったらクロージャは無視出来ない ここまではいいだろ? で >>807 wwでは毎回クロージャが作られる >>831 では毎回クロージャが作られない そこが周回ごとにスコープ出来てない、言われてるんだろ
872 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:30:03.57 ] >>868 それはすまんかった >>839- から続く不毛な議論に終止符を打ちたかったんだが、途中から入ると難しいな… >>869 while でも出来る
873 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:30:43.17 ] >>872 > while でも出来る じゃあ、実際にやってみ。 ?って思うぞ。
874 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:32:32.98 ] >>871 > >>807 wwでは毎回クロージャが作られる お前根本的なところがわかってないんじゃないか? >>807 はループになってない。
875 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:33:07.20 ] >>871 > >>807 wwでは毎回クロージャが作られる ちょwおまwww
876 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:33:13.29 ] >>807 のクロージャーの部分は whileの( 条件 ) だ。
877 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:37:04.76 ] >>873 var i = 0; while (i < 10) (function (i) { console.log(i++); }(i));
878 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:37:26.72 ] whileにクロージャーを使えというレスに 対するボケを見抜けない人は辛いなw
879 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:38:45.15 ] >>877 想定通り、無限ループやっちゃったねw
880 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:40:58.13 ] ねぇねぇ 今どんな気持ち? ∩___∩ ∩___∩ ♪ | ノ ⌒ ⌒ヽハッ __ _,, -ー ,, ハッ / ⌒ ⌒ 丶| / (●) (●) ハッ (/ "つ`..,: ハッ (●) (●) 丶 | ( _●_) ミ :/ :::::i:. ミ (_●_ ) | ___ 彡 |∪| ミ :i ─::!,, ミ、 |∪| 、彡____ ねぇ今どんな気持ち? ヽ___ ヽノ、`\ ヽ.....::::::::: ::::ij(_::● / ヽノ ___/ ねぇねぇったらー / /ヽ < r " .r ミノ~. 〉 /\ 丶 / /  ̄ :|::|>>877 ::::| :::i ゚。  ̄♪ \ 丶 / / ♪ :|::| ::::| :::|: \ 丶 (_ ⌒丶... :` | ::::| :::|_: /⌒_) | /ヽ }. :.,' ::( :::} } ヘ / し )). ::i `.-‐" J´(( ソ トントン ソ トントン
881 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:41:44.01 ] 0 0 0 0 0 0 0 0 0 0 0 0 0
882 名前:877 mailto:sage [2012/02/20(月) 01:47:11.21 ] そういうことか var i = 0; while (i < 10) i = (function (i) { console.log(i++); return i; }(i));
883 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:47:49.11 ] (function(){ var i = 0; while (i++ < 10) (function (i) { console.log(i); }(i)); }());
884 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:49:30.70 ] >>882 iがスコープに閉じてない。
885 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:49:56.89 ] var i = 0; while (i++ < 10) (function () { console.log(i); }()); こうだろwww
886 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:50:31.07 ] リロードしろとあれだけ(ry
887 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:52:35.57 ] で話は>>831 という最終形態に戻る。 普通はこれでいいし、 var i=0; while(i<10) { console.log(i++); } どうしてもというのなら、 (function() { var i=0; while (i<10) { console.log(i++); } }()) これだけでいい。へんなコード書くな。
888 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:54:07.31 ] >>887 だから、それだとスコープが毎回できないだろ 毎回スコープを作るのがお題なんだから そのお題の理由はわからんけどw
889 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:55:01.25 ] 結局のところ、>>800 が正しいならむしろES.nextのletがバッドノウハウになる気がするんだがそこんとこどうよ?
890 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 01:56:45.03 ] whileとかどうせループの最初で変数初期化するんだから これでいいが (function() { var i=0; while (i<10) { var j=0, k=0; ・・・ } }()) 変数初期化サボるとかどうしてもやりたいのなら (function() { var i; while (i<10) {(function() { var j, k; ・・・ }())} }()) こう書けば? { ・・・ } が JavaScriptでは (function() { ・・・ }()) に なるってだけの話をいつまで続けてるんだ?
891 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 02:01:51.13 ] >>884 そこまで求めるのか while 文の体裁を崩して条件式に関数を入れないと無理だと思うのだが
892 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 02:09:23.12 ] すごく変態です……ってことだろ 少なくともブロックスコープさえあれば自然に書ける(C++派) あるいは末尾再帰が最適化されるなら開き直って全部再帰で書ける(Scheme派) letがなくてどっちもできない現状のJavaScriptは中途半端だなって気はする つーかブロックスコープなんていらんから末尾再帰の最適化しろと言いたい
893 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 08:57:39.20 ] >>885 のは無意味 (function() { var i=0; while (i++ < 10) (function (n) { console.log(i++); })(i); }()); これと (function() { var i=0; while (i<10) { console.log(i++); } }()); これじゃ意味が違うだろ
894 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 08:58:16.95 ] 上の方のconsole.log(i++)はnに置き換えてねw
895 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 10:32:13.71 ] while(i ? i < 10 : (i = 0, true)) (function(i) { console.log(i) })(i++)
896 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 11:53:50.87 ] Javascriptは、条件式の部分で変数宣言ができないから、 条件式まで含めなくても実用上は困らないと思う。
897 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 15:04:50.75 ] >>889 es6はlet定義しかないけど (function() { let x = 10; {let x = x + 20; console.log(x)}})() //->NaN (function() { let x = 10; let x2 = x + 20; console.log(x2)})()//->30 (function() { let x = 10; {let( x = x + 20)console.log(x)}})() //->30 を理解してりゃ問題ないと思う。 letでブロックスコープになると思ってるのが間違い。 >>800 の言いたいことは多分こういうのだと思う。
898 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 17:21:27.95 ] >>889 >>800 は正しくない。 全てObjectなんて言えるのはSmalltalkみたいに 制御文の中のbodyもObjectにできるような言語。 Javascriptは、Schmeに多くを担いながら、 Cのsyntaxを使い、なおかついろいろと削ぎ落してブラウザ向けに軽量にした言語。 ECMAScriptの仕様的にも”primitive value"は"Object"ではない。
899 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 17:23:21.85 ] 意識しないうちにboxing/unboxingをするんだっけか
900 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 17:31:02.68 ] >>892 Schemeは、letに関しては、 ラムダ式さえあれば、letも簡単に実現できる。(当時はBLOCKマクロ) 意味論的にも問題ないし、コンパイラもシンプルになる。"RABBIT: A Compiler for SCHEME" けどプログラム書く時に不便だからletは言語仕様に入れようね派。"RnRS"
901 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 17:45:36.88 ] ちなみに、Brendan Eichは、Javascript(Mocha, Livescript)を設計した時に、 "RABBIT: A Compiler for SCHEME"にもろに影響を受けて、 言語を小さくするためletは導入しない決定をしたと思われる。 Schemeを実装する予定でNetscape社に入ったと後に語っているので。 ただ「小さくする」制約が、今では全く無意味になったので、 EichはECMAScript仕様策定ではかなり盛り込む派に立っている。 moduleも付け加えたほうがいいと考えている。 けどそれは現在のWebの世界を尊重して慎重にやらないといけないという立場。 だからHarmonyを仕切ってES4を一旦白紙に戻した。 けど捨てたわけじゃなくて個別の項目について継続審議中。
902 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 17:49:31.65 ] letは、lambdaを使うマクロとして実装することもできるけど、プリミティブとして実装すると、 作ったらすぐその場で適用する関数として、最適化できるんだよな確か。
903 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 18:24:48.37 ] let式じゃなくてlet文なら持ち運ばれる可能性ないからね。 エスケープ解析しなくてもクロージャ生成を端折れる。
904 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 21:28:25.03 ] javascriptって結局lispのパクリemacsのパクリなんだろ もうjavascript廃止してlispを標準にしろよ
905 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 22:11:25.64 ] ブラウザ標準スクリプト言語として? 妄想は他の人の目に付かないところでやってくれ
906 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 22:31:42.97 ] 見た目がC言語っぽくないと拒絶しちゃう人がいかに多いかわかってないだろ >>904
907 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 23:09:13.62 ] まあ、ブロックスコープがないC言語でも UnixやLinuxが作れるように、合ったら便利だけど 無くても問題ないものなんだろうね。 関数にしておけばいいだけなわけだし。
908 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 23:18:17.08 ] > ブロックスコープがないC言語 > ブロックスコープがないC言語 > ブロックスコープがないC言語
909 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 23:27:47.91 ] 早速一匹釣れたかw
910 名前:1/2 mailto:sage [2012/02/20(月) 23:27:57.98 ] そもそもCはオブジェクト指向じゃない。その上、for文にブロック変数が作れるよ。ミスリー? スコープが簡単に作れないってのはJavaScriptが根本に抱えてる問題の一つだよ 現実から目を背けたって意味ない
911 名前:2/2 mailto:sage [2012/02/20(月) 23:30:19.23 ] JavaScriptは 他のオブジェクト指向言語のように直感的にブロックでスコープが作れないし (ex.ループ内にスコープを作ろうとするだけで複雑なコードになる) Function objectでスコープ作れるけど、Lisp/Schemeほどの便利さはない (ex.末尾再帰最適化されない、高階関数が簡単にはできない)
912 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 23:55:05.01 ] いや、高階関数は結構得意。 Javascriptの特徴といっていいくらい。 設計時にクロージャを導入する決断をしたのは素晴らしい。 Schemeと一緒で部分適用は苦手。(ML, Haskellは得意)
913 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 00:03:31.16 ] 玄人向きの機能が無駄に充実してるのに基本的な機能が足りない でもそんなところが可愛いよJavaScript
914 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 00:20:58.15 ] 釣り人が足滑らせて溺れながら「釣れたか」とか言ってる?
915 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 03:24:10.03 ] >>903 var x = eval("let (x = 20) { x }") これで簡単に外に漏れる。 var xの実行コンテキストがGlobalならCallがメモリリークするのと同じ問題が起きる。
916 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 08:43:22.34 ] evalはバッドノウハウだから どうでもいい。
917 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 10:17:16.82 ] 次のテンプレ案これでどうかな。 【言語設計】JavaScriptスレ 2.0【限定】 言語としてのJavaScriptに関する議論のスレです。 Web製作におけるJavaScriptの質問はWeb製作板へ。
918 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 10:37:29.46 ] せっかくのホイホイスレなんだから限定にすんなよ
919 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 10:53:08.81 ] 次スレイラネ ECMAScriptスレで必要充分だろ
920 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 13:22:20.88 ] 無いと分かってない奴が立てるんじゃないかな。このスレみたいに。
921 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 13:28:03.39 ] 立てなくてもいいからdartスレのバカどもをちゃんと引き取ってくれよ
922 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 13:55:52.87 ] おまえが誘導しろよ
923 名前:デフォルトの名無しさん [2012/02/21(火) 15:21:48.40 ] 2ちゃんねるはオワコン 質問サイトに移行したほうが俺らのため
924 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 16:00:52.24 ] 質問サイトもいいかげんオワコンだろがw はてなはあいかわらずのはてなクオリティだし、他のサービスはほとんどの回答者がハズレ回答者だし。
925 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 20:40:17.66 ] dartは別スレでいいだろ
926 名前:デフォルトの名無しさん [2012/02/21(火) 21:32:28.60 ] 連想配列をキーそのものでソートする方法を教えてください
927 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 22:31:52.58 ] 連想配列はソートできませんので連想配列のキーをソートしてください。
928 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 22:47:05.49 ] javascrpitを使って、skypeのチャットのようなことをブラウザでやりたいのですが可能でしょうか? サーバからの要求を受ける機能があるかどうかというところだとは思っているのですが
929 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 22:52:47.17 ] >>928 Ajaxで検索
930 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 23:01:45.08 ] >>929 早い返信ありがとうございます www.openspc2.org/JavaScript/Ajax/Ajax_study/chapter02/001/index.html ↑ググってすぐに見つかった、ここをとりあえず見てました。 ざっと読んだ感じ、同期を取ることがJSでは不可能なため、setIntervalなどを使っていくしかないという認識でよいでしょうか?
931 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 23:07:09.36 ] Push自体は無理なので 定期的なポーリングによるPushもどきになるのは仕方ない
932 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 23:14:36.15 ] なるほど、やはりそうなりますよね 私はチャットのデータをMySqlで管理したく思っているのですが、 とすると、数秒起きに最新何十件のチャットを読み込みにいくということになりそうですね。 あとはどのようにレスポンスをあげていくか頑張ってみます。 ありがとうございました
933 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 23:35:17.53 ] >>932 「何かあるまで応答を返さない」 という手もあるぞ
934 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 23:38:33.57 ] ローカルストレージはブラウザによって作法が違うのでよく調べたほうが良い。 今後はHTML5 client-side database storageに集約されていくのだろうが。
935 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 00:15:40.04 ] pushが無理とかHTML4時代の人間ばかりだなw
936 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 00:24:19.87 ] スレがすげー伸びてるw >>727 >>725 が言っているのは、 var foo = function foo() {} function foo() {} と全く同じ意味だから前者は無駄ってことなんじゃ?
937 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 00:53:58.05 ] >>930 よろしくありません ピント:ggrks
938 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 01:59:31.06 ] >>935 >>937 まぁそう言わずに、勉強する気はありますので、せめて何という技術かくらいは教えていただけませんか
939 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 02:41:36.40 ] >>936 どっちかと言えば var foo = function(){}; と同じと言いたかった。 fooを二度書く意味あんのかよと。格好悪いし。
940 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 03:19:41.23 ] >>939 同じじゃないよ nameとスコープと変数の実体化に影響する
941 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 03:23:04.22 ] >>936 スタイルで書いてると(必ずしも同じ名前である必要はない) 幸せになれるよ
942 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 09:18:42.72 ] >>936 ,939 var f = function (){};console.log(f.name); var f = function hoge(){};console.log(f.name); var f = function hoge(){},b = f;console.log(b.name); この3つ実行すりゃ違いわかるよ
943 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 11:08:36.16 ] >>941 後者で書いてると幸せになるの?
944 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 11:27:48.11 ] >>938 横レスだけど、HTML5前提でよければ、WebSocketという技術がある 詳しくは、WikipediaなりGoogleで調べてちょ
945 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 11:32:34.23 ] (>>944 の補足) WebチャットなりWebSocket技術はWebブラウザ前提の話題だから、 もし続きの質問がしたいのであれば、このスレよりも WebProg板のHTML5スレのほうが期待するレスをもらえると思う
946 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 11:36:43.74 ] こういうプッシュとかを使う物って、その間ずっとセッションを残してる訳だろ? サーバ側が対応してないと実際使用するのは難しい
947 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 11:49:04.39 ] WebSocketは(socketという名前が示すように)双方向通信技術であって、 プッシュ技術ではないし、さらにはサーバ側の対応は(最初から)必須
948 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 14:33:11.47 ] >>939 それは違う。>>936 の2つとは違う。 >>942 >>936 の2つは同じ。
949 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 16:20:31.58 ] >>948 var f = function hoge () { console.log(hoge); }; console.log(hoge); まぁ両方fooだから同じとも言えるけど
950 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 16:59:58.57 ] var foo = function foo() { alert(foo) } var bar = foo; foo = undefined; bar(); // IE以外で動作 これならarguments.calleeで良い気がするけど、 他にメリットあるんだろうか。
951 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 17:02:02.86 ] function expressionのnameはbody内で有効な識別子に過ぎないから当たり前。 再起その他、自己参照のある関数用。
952 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 20:58:44.24 ] >>944-947 遅くなりましたが返信ありがとうございます HTML5対応ブラウザはWebSocket、未対応ブラウザはsetIntervalで動くように試してみたいと思います さっそく勉強に入ります これから作るぞーという今の気持ちが一番楽しくていいですね
953 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 22:30:45.66 ] arguments.calleeは使ったらダメ
954 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 22:31:31.36 ] で、最終的にはアレを使えばいいから 作らなくてよくなるんだよなw
955 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 23:07:51.56 ] アレってなんだよ websocketはサーバー側が対応してないとどうにもならんしポーリングはラグるしcommetは接続数たらんくなるしなので同期はやるだけの価値がないというのが俺の結論
956 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 23:41:02.25 ] サーバーは対応してるの使えばいいだけ
957 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 23:42:07.70 ] >>955 やるだけの価値がない理由が 技術的制限の話しかでてないぞ。 価値というのはそれを使うユーザーが 必要かどうかだろ。
958 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 00:37:20.11 ] >>953 なんで?
959 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 04:33:02.14 ] >>953 これを見て思い出したけども、 そういや何でES5でarguments.calleeって使えなくなるの? もともと自分自身への参照がargumentsの中にあるのは違和感があったけど。
960 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 09:51:34.43 ] >>958-959 togetter.com/li/215907
961 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 09:56:02.34 ] 本来callerとかcalleeとか、スタックフレームから参照するはずのものを、 関数オブジェクト経由で参照するとか、設計が変だったからな、あれ。
962 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 11:52:37.38 ] >>961 arguments.caller: call site依存 (要はスタックフレームへの参照) arguments.callee: 自分のことだからセルフリファレンスがちゃんと定義されれば必要ない。
963 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 12:20:55.93 ] callerが危険だから廃止なのは分かる。 calleeはargumentsにぶら下げるのが不恰好だから廃止って感じなのか。
964 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 12:39:51.85 ] argumentsは動的に決まるのに、calleeは参照場所で静的に決まってるからね。 あまりいい整理の仕方じゃなかったね。
965 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 13:34:12.67 ] 関数名は__FUNC__で取得できるようにすれば良い。
966 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 13:49:03.73 ] WMIをつかうとき、取得結果をEnumeratorに食わせなければいけない 理由をおしえてください。
967 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 00:24:37.57 ] WMIのメソッドがコレクションを返すから
968 名前:デフォルトの名無しさん mailto:sage [2012/02/25(土) 11:33:13.91 ] コレクションは直接見れないの?