JavaScript 4
79 :デフォルトの名無しさん :2015/02/18(水) 23:52:45.07 ID:86t2mSil.net >>76 これそもそも第2引数は一度も使ってないけど、何のためにあんの? あと、 if (!hoge) return; 追加したら test(false,false); の時の挙動変わってんじゃん
80 :デフォルトの名無しさん :2015/02/18(水) 23:55:34.69 ID:M4E75IrS.net >>78 いや{length:10}de配列ライクと言えると思われる var hoge = {length: 10}; for (var i = 0; i < hoge.length; ++i) { console.log(hoge[i]); } で全部undefinedが出力されるけど、それは普通の配列でも有り得る事だし var hogeArray = Array.prototype.slice.call(hoge); で配列に変換も出来る
81 :デフォルトの名無しさん :2015/02/19(木) 00:01:52.76 ID:4zgsUurY.net >>79 直した…スマソ function test(hoge, foo) { 'use strict'; if (typeof hoge === 'boolean') { console.log('hoge is', hoge); } else if (hoge && typeof hoge === 'object') { if (hoge.hasOwnProperty('hoge') && typeof hoge.hoge === 'boolean') { console.log('hoge is', hoge.hoge); } if (hoge.hasOwnProperty('foo') && typeof hoge.foo === 'boolean') { console.log('foo is', hoge.foo); } } }
82 :デフォルトの名無しさん :2015/02/19(木) 00:46:16.03 ID:+Jg4S+WS.net >>80 JavaScript難しいなぁ Array.prototype.slice.call(hoge); ってするときに hoge = {length:4.5} => 4コ hoge = {length:Infinity} => 0コ hoge = {length:99999999999 } => フリーズ hoge = {length:-0.1} => 0コ hoge = {length:-1} => フリーズ hoge = {length:NaN} => 0コ hoge = {length:true} => 1コ うーむ・・・ でかいのはまだしも、負数を渡すとフリーズするのは内部で何をしているんだろう
83 :デフォルトの名無しさん :2015/02/19(木) 01:00:49.63 ID:4zgsUurY.net >>82 sliceがマイナスの値は最後から処理するからな気がする lengthがマイナスなのは配列とは言えないから やっぱり if (hoge && hoge.length > 0) { var hogeArray = Array.prototype.slice.call(hoge); } ってのは必要だね
84 :デフォルトの名無しさん :2015/02/19(木) 01:35:12.55 ID:iPujbk1h.net >>83 必要かどうかは仕様による。 >>83 のコードが必要な理由は、lengthにマイナスが入ることが プログラムの仕様的にありえるから、必要なのだろう? lengthにマイナスが入った時どうするか? 例外を出すか、永遠と処理するか、hogeArrayをundefinedにするか。 それは仕様で決めること。 そのコードはhoge.lengthがマイナスの場合、hogeArrayは undefinedになるという仕様のコード。 それの仕様でいいのかどうかを考える必要がある。
85 :デフォルトの名無しさん :2015/02/19(木) 08:45:08.63 ID:ACeVxkIV.net >>76 > 単にnullチェック抜けてるって言えば済む問題を○型が考慮されてないとか > お前の方が素人丸出しだ そのコードは typeof 演算子の "Object (native and does not implement [[Call]])" しか対応できてないだろう? http://es5.github.io/#x11.4.3 前方互換性をふまえれば、ES6 でも正しく判定出来ることが望ましい http://people.mozilla.org/~jorendorff/es6-draft.html#sec-typeof-operator Null 型を誤検知するだけなら「Object 型の一部」とはいわない あなたは ECMAScript 仕様書をまともに読んだことがないだろう? ES 仕様に言及している意見に反論するなら仕様書ぐらい読んで欲しい >>78 > >>65 はそもそも何を持って配列のようなオブジェクトといいたいのだろう わかりやすくいうならば、 Array.prototype.forEach と同様の判定といえるかな Array.prototype.forEach では ToObject, ToInt32 で型変換しているわけだが、型変換せずに TypeError を返したい状況もあるだろう http://es5.github.io/#x15.4.4.18
86 :デフォルトの名無しさん :2015/02/19(木) 12:11:41.51 ID:k55gX30E.net >>85 > そのコードは typeof 演算子の "Object (native and does not implement [[Call]])" しか対応できてないだろう? それで事足りてるという事は仕様的に問題ないという事だ 対応できてない事で実用的に問題があるコード例を挙げて説明してくれ そもそもJavaScriptは var obj0 = {hoge:true, foo:false}; var obj1 = {foo:false, bar:1, hoge:true}; function Hoge() {this.hoge = true; this.foo = false;} var obj2 = new Hoge(); のどれを渡されても同じように機能する事が期待されている !obj(nullとundefinedのチェック)とプロパティーの存在チェック(と最終的に'number'などの型チェック)以外に必要だとは思えない
87 :デフォルトの名無しさん :2015/02/19(木) 13:17:52.04 ID:VHEGaKii.net 実際、>>72 が直感的にコードを書いて多数間違えたぐらいだからなあ rypeof演算子に関しては良い仕様とは言い難い
88 :デフォルトの名無しさん :2015/02/19(木) 15:27:06.03 ID:/+bx2aTM.net なにがArrayLikeかは難しいよ。どういう目的で区別するかで変わると思う。なぜなら何を配列と見立てられるかは用途によって変わるから。 例えば配列に変換したいという場合なら、ES6のArray.fromを参考にすると、 lengthを持っているか(オブジェクトでなくともラッパーのプロトタイプにあればいい)、イテラブルならOK。 これが広義のArrayLikeだろう。 またはArray.prototype.concatで、引数をSpreadすべきかどうかなら、実は配列かどうかというチェックだと問題がある。 だからES6からは@@isConcatSpreadableのチェックに変わった。 要するに「一般的なArrayLikeの判定」を定義するのは無理というか、しても役に立つものにならないと思う。
89 :デフォルトの名無しさん :2015/02/19(木) 16:24:08.30 ID:+Jg4S+WS.net >>86 プロトタイプチェインはたどらないの?
90 :デフォルトの名無しさん :2015/02/19(木) 19:11:01.43 ID:FI1nksg/.net >>88 > ES6のArray.fromを参考にすると、lengthを持っているか(オブジェクトでなくともラッパーのプロトタイプにあればいい)、イテラブルならOK。 Array.from は配列に変換する、つまり Object 型に変換するから変換元が Object 型であることを求めないだけな気がする ierator を除くと Array.from は ToObject, ToLength(Int32への変換)をしている http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from 変換後のオブジェクトが ArrayLike と考えられるので ArrayLike は「Object 型」「Int32のlengthプロパティを持つ」になる Array.from の挙動は>>85 で説明されている Array.prototype.forEach の挙動と一致する Array.prototype 系メソッドを一通り読めばわかると思うけど、全てそういう挙動になってるよ 対象を isArrayLike で判定して例外を返すか、ArrayLike に変換するか、は意見が別れる(ポリシーに依る)だろうけどね ES6 の挙動に合わせるなら変換する方になる
91 :デフォルトの名無しさん :2015/02/19(木) 21:45:10.46 ID:/+bx2aTM.net ToObjectがかかっているのは、null/undefinedはじきや、Getやらもろもろの処理がObjectであることを期待しているためだからであって、処理の本質とはあまり関係ないけどね。 あとToLengthはInt32でなく2^53-1までの整数。 長さを拡張すべきという問題が出て、Arrayに関しては互換性問題で見送られたけど、型付配列は長さ2^53-1までになったから、ここに関しても絶対基準はないと思う。 別にこの範囲でなくともエラーになるわけではなくて、範囲に収まるように強制されるだけだし。
92 :デフォルトの名無しさん :2015/02/19(木) 22:21:02.70 ID:cTS5FQ8e.net >>91 なるほど ES6 の Array.prototype.forEach の length も 2^53-1 に拡張されてるんだな http://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.prototype.foreach 今後、更に拡張される可能性を考えると、length に関しては Number.isInteger の判定ぐらいでいいのかもしれないな http://people.mozilla.org/~jorendorff/es6-draft.html#sec-number.isinteger
93 :デフォルトの名無しさん :2015/02/23(月) 05:03:25.31 ID:m2dP1v8u.net 別に整数かどうかの判定は要らないだろう。 「"5"」だったら「5」、「true」だったら「1」になるのがJS流だし。 整数の長さが欲しければ「len = obj.length|0」とするのがJS流。
94 :デフォルトの名無しさん :2015/02/24(火) 00:54:33.32 ID:XD7S4Fuq.net try catchって頻繁に呼び出す関数では最適化できなくて遅くなるから使っちゃいけないのか? 知らなかった…Chromeのプロファイラに出ていた警告を見て初めて知った
95 :デフォルトの名無しさん :2015/02/24(火) 11:35:35.42 ID:SsySdaPd.net >>94 ループで、独自につくったルーチンなどを頻繁にそれつかって回すと激遅になる ので、なるべく、どこかで検証用の別ルーチンで対処させるようにしてる。
96 :デフォルトの名無しさん :2015/02/24(火) 12:16:53.92 ID:lFZ8d0+y.net 関数全体を覆わなければ問題ない。 一番ベストな使い方は関数呼び出しの部分だけに使用する。 try{ func() } そうでなくても全体で使用しなければ、tryの掛かっていない部分はfor文等一定のブロックごとに最適化が働く。
97 :デフォルトの名無しさん :2015/02/24(火) 12:32:14.82 ID:6vv1mCHr.net >>94 try catchの使い方を間違えてるんでしょ。 try catchを正しく使うということは try catchを使わないことを意味するw 何を行っているかわからないと思うが、 基本的に、windowのerrorイベントを使えばいいんだよ。 errorイベントは、誰もcatchしない時に呼ばれる所。 ここでまとめて処理すればいいし、普通はここで処理するもの。 例外的に途中でcatchしなくちゃいけない時だけcatchをする。 だからtry catchを正しく使う = try catchを使わないということになる。 逆に間違った使い方をしていると、catchしてalert()とかreturn falseとかするから、 間違った使い方 = try catchが多くなる。
98 :デフォルトの名無しさん :2015/02/24(火) 12:48:11.36 ID:wY5F80Ar.net >>94 try-catch は例外を捕捉しなければエラー処理出来ない場合に使うもの 例外が発生する条件は確定しているのだから、 try-catch を使わなくても対応出来る場合が大半を占める try-catch を使うのは new ActiveXObject() で対応する引数に応じて処理を分ける等の例外的なケースに限られる
99 :デフォルトの名無しさん :2015/02/24(火) 16:54:22.71 ID:gLNZIunY.net netbeansを使ってるんだけど最初にテンプレが出ますよね?あれを編集する方法ないですか?
100 :デフォルトの名無しさん :2015/02/25(水) 22:58:43.24 ID:JtIRtORE.net 現行スレ + JavaScript の質問用スレッド vol.123 + [転載禁止](c)2ch.net http://peace.2ch.net/test/read.cgi/hp/1423915644/
101 :デフォルトの名無しさん :2015/02/25(水) 23:20:48.35 ID:JFD+ngFs.net >>99 [ツール]-[テンプレート] [エディタで開く]
102 :デフォルトの名無しさん :2015/02/27(金) 18:16:56.06 ID:6eP810Kn.net >>101 テンプレのタグが分かりません・・・
103 :デフォルトの名無しさん :2015/02/27(金) 19:56:27.10 ID:Wvtuv0/g.net >>102 それは自分で努力すればいいよね?
104 :デフォルトの名無しさん :2015/03/13(金) 19:23:10.11 ID:UBRcUR4y.net jsonの日
105 :デフォルトの名無しさん :2015/04/05(日) 02:51:05.42 ID:Obp0DJ+Th VBAがある程度できるようになったから、 JavaScriptを始めたんだけどデバックがわけわかめ。 Google ChromeのJavaScriptコンソールを使っているんだけど、 一行ずつ実行とかどうやればいいかわからない…。
106 :デフォルトの名無しさん :2015/04/12(日) 11:08:10.55 ID:7j69OB5F.net 『関数型プログラミングに目覚めた! IQ145の女子高校生の先輩から受けた特訓5日間』 http://www.amazon.co.jp/dp/4798043761/ せっかくだからJavaScriptで関数型プログラミングを学んでみるのも面白いかもしれないな。
107 :デフォルトの名無しさん :2015/04/12(日) 17:02:14.80 ID:PVRHL1t5.net >>106 Qiitaアカバンされたポエマー、毛の壁先生じゃんw
108 :デフォルトの名無しさん :2015/05/18(月) 15:33:55.56 ID:lIw4CyOJ.net JavaScriptが20周年。開発者のBrendan Eich氏が過去と未来についてのスライドを公開 ttp://www.publickey1.jp/blog/15/javascript20brendan_eich.html
109 :デフォルトの名無しさん :2015/05/18(月) 17:37:17.88 ID:rf0kuBu1.net >>108 たった10日で書いたのか。 通りでクソなはずだ。
110 :デフォルトの名無しさん :2015/05/19(火) 14:42:25.57 ID:k4tzDQ/5a >>108 (円環はいま閉じた)と表しています。
111 :デフォルトの名無しさん :2015/05/20(水) 01:48:48.87 ID:zDiYcCDM.net 言語としてはかなりシンプルだったからな。 LexとYacc使っただろうし、スタックマシンな バイトコードインタープリタはSchemeのインタープリタを Cで書いたことがあれば難しくない。 コードを10日で書いたからクソというよりは、 書く前に言語仕様をきちんと練らなかったからクソなんだろう。
112 :デフォルトの名無しさん :2015/05/20(水) 05:27:02.66 ID:iajmjkjM.net 10日で書いたにしては良くできてるけど、もともとVBAみたいなものなのに、 後からいろいろ理屈を考えて素晴らしいものみたいに言いくるめようと したのがいけなかったんじゃないの。 アプリに付属させるマクロだと思えば、納得の仕様だと思うけど。 元々そういうものなんだし。
113 :デフォルトの名無しさん :2015/05/20(水) 11:19:23.20 ID:0vsGwB+G.net >>111 すまないが、ゴミをシンプルって言う風潮やめてくれるか?
114 :デフォルトの名無しさん :2015/05/20(水) 12:06:13.47 ID:D22K7RGs.net ClojureScript使い始めたらJSのクソさが 気にならなくなってきた。
115 :デフォルトの名無しさん :2015/05/20(水) 12:18:11.33 ID:qzEPJuIN.net 誰でも10日で出来る作業なら クソだろうさw 10日でとても出来ないような作業を 10日で作ったのならば、それは優秀ってことだよ。 優秀な人が作ったのだから、とても良く出来ている。
116 :デフォルトの名無しさん :2015/05/20(水) 14:27:44.16 ID:0vsGwB+G.net >>115 ←こういうの権威主義の馬鹿っていうんだよねぇ。日本人に実に多い。
117 :デフォルトの名無しさん :2015/05/20(水) 15:12:28.11 ID:qzEPJuIN.net どれだよ権威ってw 権威じゃなくて実力だろw
118 :デフォルトの名無しさん :2015/05/23(土) 05:06:34.47 ID:aWFfanUl.net jsスレでdisるのもアレだけど 権威主義以外の何物でもない 10日で作ったのは凄いかもしれんが別に洗練されてもないしシンプルでもない 初期のjsって文字列演算、暗黙変換とか無駄に長いfunctionとか、 中途半端にvbやC++の真似もしてて、バージョン違いの挙動もあって普通にクソ 初期のを優秀とか言う奴はES6使わないで欲しい 本人はサブセット言語嫌いとかlisp嫌いとか好き勝手言ってるみたいだけど 素直にパクリ元のselfのサブセットを素直に実装すりゃよかったと思うわ
119 :デフォルトの名無しさん :2015/05/23(土) 08:57:54.91 ID:3bf42BAL.net だいたい名前からしてクソだよ。 全然関係無いJavaパクってるんだし。
120 :デフォルトの名無しさん :2015/05/23(土) 10:54:12.24 ID:vTpQyjFi.net >>118 お前こそ権威主義じゃねーかw オリジナルは偉いんだ?w
121 :デフォルトの名無しさん :2015/05/24(日) 00:11:51.40 ID:hZNW9MV5.net >>120 日本語読めないならそう言ってくれよな 噛み砕いて話してやるからさ
122 :デフォルトの名無しさん :2015/05/24(日) 13:15:55.75 ID:bCeKXRbu.net >>121 じゃあどこが権威主義なのか 噛み砕いて説明してください。 その前に前提として権威主義とは何かを書いておきますね。 http://ja.wikipedia.org/wiki/%E6%A8%A9%E5%A8%81%E4%B8%BB%E7%BE%A9 > 権威主義(けんいしゅぎ)とは、権威に服従するという個人や社会組織の姿勢、思想、体制である[1][2]。権威主義の反対は個人主義や民主主義である。 > 政治学上の用法では、権威主義体制とは非民主的な体制の総称であり、通常は独裁、 > 専制、全体主義などを含むが、権威主義体制を民主主義体制と全体主義体制の中間とする立場もある[5][6]。 http://d.hatena.ne.jp/keyword/%B8%A2%B0%D2%BC%E7%B5%C1 > 権威(人を服従、強制させる力)に価値をおき、それに対して自己卑下や盲目的服従をする態度のこと。 > また逆に人にそれを要求する態度のこと。心理学的には、権威や伝統、社会的に価値のあると > されているものを無批判に承認し、これに服従、依存し、融通が利かないパーソナリティを指す。
123 :デフォルトの名無しさん :2015/05/24(日) 15:11:00.39 ID:9Q9ph3Hr.net オリジナルがえらいのではなくて パクリ損ないでオリジナルより劣化してるのがクソ、 っていう単純な話だと思うのだが……
124 :デフォルトの名無しさん :2015/05/24(日) 18:48:24.27 ID:hZNW9MV5.net >>122 10日で作業したというだけで優秀として 優秀な人、その人が作ったからスバラシイ 全然中身に言及してねえじゃんw どこに権威主義以外の要素があるんだよw
125 :デフォルトの名無しさん :2015/05/24(日) 22:02:35.19 ID:bCeKXRbu.net >>124 権威はどこにいったの?w
126 :デフォルトの名無しさん :2015/05/25(月) 17:36:12.90 ID:2/V0nnt+.net >>123 まさかここまで使われるとは思ってなかったんだろうな
127 :デフォルトの名無しさん :2015/05/25(月) 18:03:08.64 ID:MD5bLCSX.net >>118 ユーザが100万人ほどの言語を10日で作ってから言え
128 :デフォルトの名無しさん :2015/05/25(月) 21:15:36.88 ID:Pr0+1HdK.net >>127 権威主義万歳!
129 :デフォルトの名無しさん :2015/05/25(月) 21:28:29.13 ID:Pr0+1HdK.net 流石に初期JSの規模で大変とか言ってるのは インタプリタの作り方もわからない初心者だけだよな? クソ言語でも普及したPHPと違って言語そのものの需要で使われたわけでもなし JSが普及したのはウェブブラウザが先進的だったから そもそも本人も公開してるのに何マンセーしてんだかw
130 :デフォルトの名無しさん :2015/05/25(月) 21:29:17.23 ID:Pr0+1HdK.net 公開 -> 後悔
131 :デフォルトの名無しさん :2015/05/26(火) 00:12:46.62 ID:xYtlptqc.net >>129 オレもそう思うんだけどねえ。 Schemeのインタープリタ書いたことがあればさまえ難しくはない。
132 :デフォルトの名無しさん :2015/05/26(火) 15:21:59.38 ID:jJpgaPYe.net 学部レベルのインタプリタよりエロ動画サイト作る方が難しい
133 :デフォルトの名無しさん :2015/05/26(火) 18:58:13.73 ID:CP1OCp5D.net JavaScriptライブラリのスレにも書いたのですが,過疎っていたのでこちらで質問させてください openlayers3についてです http://openlayers.org/en/v3.5.0/examples/kml-timezones.html をそのままコピーして ローカルで実行したのですが,サンプルのようにTimezonesが表示されません(地図は表示されます) kmlファイルはhttps://github.com/openlayers/ol3 にあるdataフォルダをhtmlと同じ階層に設置しました 他のkmlファイルを読み込むサンプルも同様に動かないのですが何が原因でしょうか
134 :デフォルトの名無しさん :2015/05/27(水) 11:16:44.16 ID:XkCb2CMh.net 馬鹿には無理
135 :デフォルトの名無しさん :2015/05/28(木) 07:16:02.03 ID:4DphScwy.net >>134 だからあなたには答えられないんですね。なるほど。
136 :デフォルトの名無しさん :2015/05/28(木) 07:59:14.48 ID:616UB9cr.net >>135 ←答えられない上にコードも書けないアホ
137 :デフォルトの名無しさん :2015/05/28(木) 13:22:35.68 ID:E8n2j0BJ.net var vector = new ol.layer.Vector({ source: new ol.source.Vector({ url: 'timezones.kml',//url: 'data/kml/timezones.kml',
138 :デフォルトの名無しさん :2015/05/28(木) 17:23:07.74 ID:4ci5OfPn.net >>133 普通に動く。timezones.kmlをhtmlと同階層に置いて>>137 を書き換えても動く。
139 :デフォルトの名無しさん :2015/05/28(木) 19:02:19.37 ID:V96RG34r.net >>137 >>138 ありがとうございます IE,Opera,Chromeだと動かないのですが,firefoxだとサンプル通り動きました これってコードにブラウザ依存の部分があるのでしょうか? それともブラウザの設定の問題でしょうか?
140 :デフォルトの名無しさん :2015/05/29(金) 07:06:31.36 ID:hjMnAajE.net >>139 firefox以外はデフォルトではローカルファイルへのアスセスが制限されているからでは? http://tmlife.net/programming/javascript/how-to-chrome-ajax.html
141 :デフォルトの名無しさん :2015/05/30(土) 07:45:51.67 ID:xVK15s94.net ローカルテストはサーバ立ててやるものだと思うが、fileスキームで実行してるのか
142 :デフォルトの名無しさん :2015/05/30(土) 08:33:00.97 ID:Rpgfw2oh.net >>140 >>141 サーバたててやったらどのブラウザでも動きました ありがとうございました
143 :デフォルトの名無しさん :2015/05/30(土) 10:26:22.21 ID:3Gf/DalK.net 最近やたらめったらモジュールに切り分けてたら共通部分の重複が酷いことになってた 現在のスコープ内にimport,requireできれば便利なんだが
144 :デフォルトの名無しさん :2015/05/30(土) 12:21:21.30 ID:skc6DNlZ.net 現時点でもやはりES3で書くべきですか? ES5出てからもう何年も経ってるしObject.create()とか配列まわりの関数とか色々追加されてるのに使えないのが歯がゆいです。 ネット見てると結構ES5の機能使ってる人が多いですが、そういう方々はIE8とか切り捨ててるんですかね?
145 :デフォルトの名無しさん :2015/05/30(土) 13:40:15.04 ID:HkfQYaI5.net >>144 サポートサイクルを見たらどうでしょう? 2016年1月まではIE8対応は切れません。
146 :デフォルトの名無しさん :2015/05/30(土) 13:41:11.94 ID:HkfQYaI5.net IE8 でもpolyfillで何とかなる場面が多いとは思いますが
147 :デフォルトの名無しさん :2015/05/30(土) 14:06:06.57 ID:ebcCMrL3.net >>144 lodash使ってる。なんとIE6以上から対応してる。 実装不可能なものを除いて、ES5で提供されている関数が提供されてる。 Object.create相当のメソッドもある。 https://lodash.com/docs#create どうしてもES5だけでやりたいってわけじゃなく ES5で提供された便利な関数を使いたいならlodashオススメ。 lodashにはES5よりも多くの機能が追加されてる。
148 :デフォルトの名無しさん :2015/05/31(日) 02:38:34.37 ID:474JDHci.net >>145 ありがとうございます。 ぐぐってみたら2016年1月以降は最新版のIEしかサポートされないんですね。 こういうのを境界にして考えるのですね。勉強になりました。 polyfillというのはes-shimsとかのことですよね?Object.createに対応してないので選択肢から外れました。 >>147 ありがとうございます。今回は素のJSでやりたかったのでlodashは使えません><
149 :デフォルトの名無しさん :2015/05/31(日) 02:41:25.56 ID:474JDHci.net でももうすぐES6が出るしキリが無いですね ブラウザ対応状況とか考えるの諦めてlodashとかunderscoreとかそういうのに完全依存する方が正しいのかも
150 :デフォルトの名無しさん :2015/05/31(日) 08:20:05.87 ID:6IDXNIVy.net >>148-149 Object.create はES3の範囲内で完全実装は出来ない為、制限付きを理解した上で polyfill を書く必要がある lodash は forEach 等で ES5 互換でないコードが見受けられるので ES 標準を目指すのであればお勧めしない コードを読む限りでは 仕様に忠実なライブラリではなく、独自の世界を構築するタイプのようだから
151 :デフォルトの名無しさん :2015/06/01(月) 15:26:03.49 ID:dTiEpsP/.net underscoreって可読性低下しない? _から始まるってのがそもそも論外なんだけど… 知らない人間が見たら何だコリャ?ふざけてんのか? これを考えた奴は保守性を考慮しないオナニー馬鹿なのか?って思うだろ。
152 :デフォルトの名無しさん :2015/06/01(月) 16:19:05.72 ID:fqMWxMza.net >>151 ま、普通使わない。 オナニーって言えばその通り。少なくとも個人的に使うのだったら文句言う アレはないが、プロジェクトなんかでこんなもの使ってる奴いたら、排除する。
153 :デフォルトの名無しさん :2015/06/01(月) 16:49:15.47 ID:4t8ilUI7.net >>151 > 知らない人間が見たら何だコリャ?ふざけてんのか? それを言い始めたら、$.hogeってなんだ?ってことにもなる。 >>152 > ま、普通使わない。 以外と使われてるよ? http://www.infoq.com/jp/news/2015/04/lodash-utility-library > JavaScriptユーティリティライブラリのlodashがバージョン3.5に達して,npmパッケージリポジトリの中で > 最も多く参照されるライブラリになった。もはや代用品などではなく,信頼できる選択肢のひとつだ。 http://matsukaz.hatenablog.com/entry/2014/04/09/082410 に上げられてるようなよく使う機能は、 オレオレ実装されるより、既知のライブラリのメソッド使って欲しい。
154 :デフォルトの名無しさん :2015/06/01(月) 17:05:38.13 ID:dTiEpsP/.net javascript使いってエンジニアとして未成熟なのか文系が多いのか、 保守性を考慮しないのばっかりだよな。 多言語では保守性において禁忌とされている事を平気でやる 先人が築きあげたバグを排除するコツのようなものをを完全に無視してる たぶん将来はjavascriptの仕様が整理されて、 jQueryとかunderscoreみたいな非直観的で腐ったキーワードを使うライブラリは完全非推奨になる。
155 :デフォルトの名無しさん :2015/06/01(月) 17:20:57.79 ID:4t8ilUI7.net Javaの人かな
156 :デフォルトの名無しさん :2015/06/01(月) 17:24:57.76 ID:TGyjCQFp.net hagedo
157 :デフォルトの名無しさん :2015/06/01(月) 19:51:34.16 ID:lFnhdSIE.net >>154 だってJataScriptが使いにくいクソ言語じゃん。 細かいこと気にしてられないって、クソだから。
158 :デフォルトの名無しさん :2015/06/01(月) 19:59:11.62 ID:9HWSCI34.net >>154 こういう関数の部分の保守性とかどうでもいいよw 単純に自分実装のライブラリに入れ替えれば済む話なんだから。 それより問題なのはフレームワークだ。 馬鹿が使うとフレームワークにガッチリ組み込まれて 別のものに変えるのがすごく大変になる。
159 :デフォルトの名無しさん :2015/06/01(月) 20:00:16.98 ID:9HWSCI34.net >>153 > > ま、普通使わない。 > 以外と使われてるよ? だよな。Node関連では一番使われているライブラリだったはず。 何処かにデータが有ったはずなんだが。 好き嫌いは個人の好みとして、一番使われているという 事実を知らないとしたら、モグリだろうw
160 :デフォルトの名無しさん :2015/06/01(月) 20:02:41.82 ID:9HWSCI34.net あったあった。この記事だ。 lodash, あなたが既に使っているJavaScriptライブラリ http://www.infoq.com/jp/news/2015/04/lodash-utility-library JavaScriptユーティリティライブラリのlodashがバージョン3.5に達して, npmパッケージリポジトリの中で最も多く参照されるライブラリになった。 もはや代用品などではなく,信頼できる選択肢のひとつだ。 何の根拠もない「使われてない」は無視していいよ。 だって、本人が無知だから、使われていることを「知らない」という 状態でも、自分の知ってる小さな経験だけから 使われてないって発言するだろうからさw
161 :デフォルトの名無しさん :2015/06/01(月) 20:33:19.40 ID:qMAgmJxR.net そんなことよりもNode.jsのREPLでアンダースコアが使えないのはどうすればいいの? REPL単体で使うぶんには別の名前を使っても気にならないけど、.loadで読み込むファイルでアンダースコアが 使われていた場合は、ファイルを書き換えなければならず、かなり気持ちが悪い こんな定番のライブラリで、Node.jsのことを考慮していない名前をデフォルトにするとも思えないから、 何か解決策はあると思うんだけど…
162 :デフォルトの名無しさん :2015/06/01(月) 20:42:18.22 ID:e+Q3qVuq.net >>151 perlのデフォルト演算子($_)の名残だと思ってた
163 :デフォルトの名無しさん :2015/06/01(月) 20:49:28.66 ID:9HWSCI34.net >>161 グローバル変数とローカル変数の違いわかってる? REPLで使うのはグローバル変数の_。 ローカル変数の_(lodash)が名前かぶっても 何の問題もないんだが。 名前かぶってわかりづらいというのなら、 var i だってずいぶん被ってるはずなんだが。
164 :デフォルトの名無しさん :2015/06/01(月) 20:52:38.62 ID:9HWSCI34.net >>162 いやー、普通、_で思い出すのは、 C言語などで広く使われてる多言語の仕組みである GetTextの_関数でしょw あれだって、_で始まる関数なわけだけど、 何だこりゃの前に、普通GetText思い出すよね? >>151 は無知なんじゃないかって思うだけなんだが。
165 :デフォルトの名無しさん :2015/06/01(月) 21:51:26.69 ID:dTiEpsP/.net >>164 _で始まるって言い方はおかしかったな。 C言語系の_は名前が続くから識別に問題ないが、_だけというのがクソだって話 これを初めて拝んだとき、_だけを変数名にするなんて一体このバカはどんな教育を受けているんだと思ったわ。
166 :デフォルトの名無しさん :2015/06/01(月) 22:48:12.23 ID:VQX8/s75.net >>165 うん。それでgettextは、_ だけの 関数名なんだが、恥の上塗りしてどうするの?
167 :デフォルトの名無しさん :2015/06/01(月) 22:56:29.23 ID:qMAgmJxR.net >>163 流石にそれくらいは分かってるけど、UnderscoreやLodashは普通グローバルに読み込むものじゃないの? まさか関数ごとにrequireを書くわけでもあるまいし、少なくともvar iとは次元が違うものだと分かると思うんだけど…
168 :デフォルトの名無しさん :2015/06/01(月) 22:59:26.58 ID:VQX8/s75.net lodash使うアプリでグローバルなんて聞いたことがない。 普通nodeでライブラリを使うときは、 ローカル変数に、略 いわんでもわかるだろ? 知ってるならなw
169 :デフォルトの名無しさん :2015/06/01(月) 23:00:05.05 ID:VQX8/s75.net 訂正 lodash使うアプリでグローバルなんて聞いたことがない。 node使うアプリでグローバル変数なんて聞いたことがない。
170 :デフォルトの名無しさん :2015/06/01(月) 23:01:04.60 ID:e+Q3qVuq.net CakePHPなんかの__()ならともかく、underscore.jsでGetTextの方の_を、 どうすれば連想できるのかわからない
171 :デフォルトの名無しさん :2015/06/01(月) 23:01:38.04 ID:dTiEpsP/.net >>166 そんなどうでもいい知識はどうでもいい
172 :デフォルトの名無しさん :2015/06/01(月) 23:03:51.00 ID:dTiEpsP/.net _を変数名にするのはゴミだってのは100人に聞いて99人が納得する話。 ほんとjQueryといい、javascriptのライブラリ作ってる奴は基地外だわ。
173 :デフォルトの名無しさん :2015/06/01(月) 23:06:02.95 ID:qMAgmJxR.net >> 166,167 何が言いたいのか分からんのだけど、ファイルの頭で var _ = require('lodash'); // またはunderscore とするのは十分、一般的な使い方じゃないか? 適当に検索したサンプルコードでも、ファイルの頭でrequireをしているものがほとんどだし
174 :デフォルトの名無しさん :2015/06/01(月) 23:08:20.48 ID:e+Q3qVuq.net >>172 デフォルトに近い機能を誰もタイプしたくないから
175 :デフォルトの名無しさん :2015/06/01(月) 23:08:27.29 ID:VQX8/s75.net >>173 はい、だからファイルの頭で var _ = require('lodash'); // またはunderscore とローカル変数に代入してるって言ってるわけですが。
176 :デフォルトの名無しさん :2015/06/01(月) 23:12:31.08 ID:qMAgmJxR.net >>175 それで>>161 に戻るんだが、そのファイルをREPLから.loadで読み込むと名前が衝突して困るという話なんだが 何かおかしいこと言ってるかな?
177 :デフォルトの名無しさん :2015/06/01(月) 23:16:47.51 ID:VQX8/s75.net >>176 それは作り方が悪いだけだろう。 自分で作ったものを自分でロードして 問題が起きたって騒いでいるだけ。
178 :デフォルトの名無しさん :2015/06/01(月) 23:18:28.56 ID:e+Q3qVuq.net >>176 はqiitaのポストへの巧妙なステマ
179 :デフォルトの名無しさん :2015/06/01(月) 23:18:37.37 ID:VQX8/s75.net ヒント 普通はREPLでライブラリを読み込むときはrequireを使う。
180 :デフォルトの名無しさん :2015/06/01(月) 23:20:50.21 ID:qMAgmJxR.net >>177 だから、どのように作り方が悪いのかを>>161 で聞いているわけ >>178 何故qiitaが出てくるの? なんか話が通じない人多すぎ…
181 :デフォルトの名無しさん :2015/06/01(月) 23:20:51.76 ID:e+Q3qVuq.net ttp://stackoverflow.com/questions/5691901/using-the-underscore-module-with-node-js
182 :デフォルトの名無しさん :2015/06/01(月) 23:21:19.02 ID:dTiEpsP/.net >>174 underscoreというものの存在を知ってる人間じゃないと、おふざけか本気なのか理解不能 知らない人でも直観的にわかるようにするべき。 _.なんていかにも意味ありげに書かれてたら、知らない人間はjavascriptに新しい構文でも出来たのかと勘違いする。
183 :デフォルトの名無しさん :2015/06/01(月) 23:22:02.34 ID:qMAgmJxR.net >>179 それは別な名前を使うってことじゃないの? それなら>>161 で書いたよ
184 :デフォルトの名無しさん :2015/06/01(月) 23:23:01.97 ID:VQX8/s75.net >>180 > だから、どのように作り方が悪いのかを>>161 で聞いているわけ 簡単な話。 .loadでAというファイルとBというファイルの 二つを読み込んだ時を考えればいい。 同じ変数を使っていれば、混乱が起きる。 だから.loadなんかを使っては駄目だ。 REPLはAというファイルの前に 別のファイルを読み込んでいると考えればいい。 nodeの標準に合わせてrequireで読み込め。 .loadは簡易なツールにすぎない。
185 :デフォルトの名無しさん :2015/06/01(月) 23:23:03.40 ID:e+Q3qVuq.net >>182 プログラマなら皆、知ってるから
186 :デフォルトの名無しさん :2015/06/01(月) 23:23:55.32 ID:VQX8/s75.net >>182 _.なんていかにも意味ありげに書かれてたら、知らない人間は 普通調べる
187 :デフォルトの名無しさん :2015/06/01(月) 23:29:50.29 ID:qMAgmJxR.net >>184 > .loadでAというファイルとBというファイルの > 二つを読み込んだ時を考えればいい。 これに関しては自分の場合は混乱が起きたことは無いな REPLで必要になるのは常に新しくロードされたものだから > nodeの標準に合わせてrequireで読み込め。 .> loadは簡易なツールにすぎない。 その簡易なツールとしての使い方を聞いたつもりだが、まぁうまい方法は無いってことで 答えてくれたことは感謝するよ、ありがとう
188 :デフォルトの名無しさん :2015/06/02(火) 07:22:03.36 ID:ex2Jk34L.net >>185-186 こんな記述を許すなんて、webプログラマはどうかしてるわ C++等の堅牢な言語が理解できないからスクリプトに逃げたってのもあるのかねぇ
189 :デフォルトの名無しさん :2015/06/02(火) 07:56:44.99 ID:ex2Jk34L.net javascriptって手作業感のあるかなりアナログな言語だよな。 コンパイルすれば型間違いやスペルミスを全部チェックしてくれるC++の方が楽だわ。
190 :デフォルトの名無しさん :2015/06/02(火) 08:03:09.37 ID:rgUwgwJK.net デフォルトで存在しなければならないような機能の構文は 可能な限り軽くしたい、というだけの話なのだが、 まあ、キチガイみたいだし、相手にする必要もなさそう。
191 :デフォルトの名無しさん :2015/06/02(火) 08:07:16.76 ID:rgUwgwJK.net >>189 >コンパイルすれば型間違いやスペルミスを全部チェックしてくれるC++の方が楽だわ。 静的検査なのに型安全じゃないクソみたいな型システム自慢されても……
192 :デフォルトの名無しさん :2015/06/02(火) 10:18:05.55 ID:JpMYfsQK.net >>188 $と_を選択したjQueryとundersocreの作者は天才だと思うぞ
193 :デフォルトの名無しさん :2015/06/02(火) 11:02:57.63 ID:fIlyBYj2.net >C++等の堅牢な言語が理解できないからスクリプトに逃げたってのもあるのかねぇ ここ笑うところでOK?
194 :デフォルトの名無しさん :2015/06/02(火) 11:03:56.96 ID:Liw06aa4.net C++が型安全じゃないってどういうこと?
195 :デフォルトの名無しさん :2015/06/02(火) 11:47:29.34 ID:JpMYfsQK.net >>194 検索してみた 『型安全性とは何か』 http://postd.cc/what-is-type-safety/
196 :デフォルトの名無しさん :2015/06/02(火) 12:47:31.17 ID:qfQ5Cs59.net スクリプト言語なら_とかもありだと思うよ 直感的に理解不能なのはむしろC言語のテクニカルすぎるポインタ操作とか、処理系依存処理
197 :デフォルトの名無しさん :2015/06/02(火) 17:49:06.36 ID:RKN2cQRO.net >>192 思わない。逆にショボッと思うだけ。
198 :デフォルトの名無しさん :2015/06/02(火) 17:53:04.66 ID:4q1LDLUC.net Yes, I do.
199 :デフォルトの名無しさん :2015/06/02(火) 20:48:01.61 ID:80AN9G/c.net >>197 理由は?
200 :デフォルトの名無しさん :2015/06/02(火) 20:57:50.64 ID:ex2Jk34L.net _なんて使わないで堂々と大文字でUNDERSCORE.でいいのに 面倒くさいから_にしたなんていっても、 UNDERSCOREのようなループ処理は他の頻出するキーワードに比べてそう頻繁に使うもんじゃないから、 UNDERSCOREと打ち込むくらい苦にはならない むしろ見ただけでUNDERSCOREとわかるメリットのほうが大きい。
201 :デフォルトの名無しさん :2015/06/02(火) 20:58:44.32 ID:80AN9G/c.net >>192 > $と_を選択したjQueryとundersocreの作者は天才だと思うぞ 天才じゃなくてズルいと思ったな。 そんな特等席を取るなんてw でもjQueryとlodashなら許せるよ。 DOM操作目的が多いJavaScriptで標準よりも 優れたライブラリに仕上げたjQueryは高く評価できるし。 JavaScriptという言語自体に足りない(そして他の言語にはある) 基本的な機能を備えたlodashも一文字名前空間を与える価値はある。 これ以外に一文字を与える価値が有るものなんてまず無いだろう。 (あえて言うのなら多言語のためのgettextだろうね) http://ja.wikipedia.org/wiki/Gettext > まず、gettextが利用されるようソースコードの修正を行なう。これはほとんどのプログラミング言語において、 > ソースコード中の文字列がまずgettext関数へ渡されるよう、文字列をラップしていく作業となる。 > 読みやすさやキータイプの手間を省くため gettextには通常 _ のエイリアスが付けられる。C言語では、 > > printf("My name is %s.\n", my_name); > > を以下のように変更する: > > printf(_("My name is %s.\n"), my_name);
202 :デフォルトの名無しさん :2015/06/02(火) 21:00:08.82 ID:80AN9G/c.net >>200 開発効率と可読性が悪いだろw なんで多く出てくるものに、 そんなに長い情報量を与えないといけないんだ? 圧縮の基本だぞ。 多く使うものに短いビットを割り当てるのは。
203 :デフォルトの名無しさん :2015/06/02(火) 21:08:24.71 ID:ex2Jk34L.net >>202 そんなに画面を占領するほど出てこないだろ。
204 :デフォルトの名無しさん :2015/06/02(火) 23:09:26.72 ID:tDj3/Qmg.net 圧縮率が気になる人は var, a, b, c; でも使えばいい _ が気にならないなら Java でも PHP でも同じように使えばいい それが誰が見てもコードの意図を理解できるものであると思うのならな
205 :デフォルトの名無しさん :2015/06/03(水) 08:42:27.59 ID:tNzh/NJ7.net > それが誰が見てもコードの意図を理解できるものであると思うのならな ん? 馬鹿が見てもわかるコードなんてあると思うのか? 何の知識も持たない奴が、forとか見て、繰り返しだな。なんてわかると思うのか? 知識があるプログラマが見てわかれば十分だろw
206 :デフォルトの名無しさん :2015/06/03(水) 09:13:26.09 ID:L99ZSHzZ.net >>205 ←こういう極論振りかざす馬鹿はプロジェクトから最初に外したいねぇ♪
207 :デフォルトの名無しさん :2015/06/03(水) 09:32:01.02 ID:HnGZ0ASm.net そもそもjQueryの根幹を成していたcssQuery作者はJSに習熟していたから$なんて使わなかったが、 当時JS初心者が浅い知識で無茶苦茶に作ったprototypejsが流行っていてユーザーがそこで$にすっかり慣れてしまっていたから、彼らを取り込もうと図った時に敢えて$を使った。
208 :デフォルトの名無しさん :2015/06/03(水) 09:41:02.46 ID:HnGZ0ASm.net jQueryリリース日から知っているのって、俺以外で何人いるかな、まあ、ライバル心が凄くて、露骨に他のライブラリーを威圧する画像を貼っていて苦笑ものだった。 実際、query api がなかった当時において、飛び抜けた存在だった。 誰も知らないだろうが、既に消した10年ほど前のブログで俺が日本で最初にjQueryにお墨付きを出したので、変な責任感があって、今や粗大ゴミと化したjQueryを徹底的に駆除しなきゃならないと思っている。
209 :デフォルトの名無しさん :2015/06/03(水) 09:53:38.81 ID:L99ZSHzZ.net >>207 今じゃすっかり死に絶えたね prototype.jsは 未だに$使ってる奴は、PHPでもやってろって思うね。
210 :デフォルトの名無しさん :2015/06/03(水) 09:53:42.15 ID:HnGZ0ASm.net どうでもいいが、underscorejsはグローバルで名前がかち合わないよう自動処理してるだろ。だから_にこだわりも何もないよ、あれは。あの作者はさすがだなと思う。
211 :デフォルトの名無しさん :2015/06/03(水) 10:04:47.49 ID:HnGZ0ASm.net jQueryでみんなが慣れてしまったメソッドチェーンはOOPであるJSならではの妥協の産物であって決して素敵な何かではない。
212 :デフォルトの名無しさん :2015/06/03(水) 12:44:14.29 ID:rHgYCpopj >>208 最近JQuery勉強し始めたのに>>209 $ダメなのか
213 :デフォルトの名無しさん :2015/06/03(水) 17:34:44.34 ID:/Ca0vDfD.net > jQueryでみんなが慣れてしまったメソッドチェーンはOOPであるJSならではの妥協の産物であって決して素敵な何かではない。 メソッドチェーン便利じゃん メソッドチェーンを否定するなら、代わりに何を推すのだろうか
214 :デフォルトの名無しさん :2015/06/03(水) 17:50:56.37 ID:oCZofESS.net CoffeeScript
215 :デフォルトの名無しさん :2015/06/03(水) 21:53:47.03 ID:tNzh/NJ7.net >>208 > jQueryリリース日から知っているのって、俺以外で何人いるかな、まあ、ライバル心が凄くて、露骨に他のライブラリーを威圧する画像を貼っていて苦笑ものだった。 知ってるも何も、Internet Archiveに残ってるよ。 その画像ってどれのこと? https://web.archive.org/web/20060203025710/http://jquery.com/
216 :デフォルトの名無しさん :2015/06/03(水) 21:56:52.15 ID:tNzh/NJ7.net >>211 jQueryでみんなが慣れてしまったメソッドチェーンは jQueryができるより前から知っていたが、はて?
217 :デフォルトの名無しさん :2015/06/04(木) 07:09:21.45 ID:p4ZTcGym.net そもそも、$ や _ の話にメソッドチェーンは関係なかろう
218 :デフォルトの名無しさん :2015/06/04(木) 07:56:18.16 ID:0Z7pWiJ+.net ただのライブラリの話を持ち込まれてもな
219 :デフォルトの名無しさん :2015/06/04(木) 11:41:14.80 ID:sc3w8p67.net vue.js でelを指定しない時にHTMLを生成できるって書いてある記事を見かけたのだけど、どうやればいいんだ?
220 :デフォルトの名無しさん :2015/06/04(木) 15:50:39.91 ID:LzIda4YJ.net そこの記事書いた人に聞けよゆとり
221 :デフォルトの名無しさん :2015/06/04(木) 16:48:24.05 ID:TldR44zJ.net 本人乙
222 :デフォルトの名無しさん :2015/06/04(木) 17:08:20.45 ID:JWskV460.net まあ名前付けが傲慢な感じはあるね prototypeとかqueryとかnodeとかbootstrapとか、 一般的なコンピュータ用語になんでもjs付ければ許されるのかと ここ5年くらい、Web屋の無知と傲慢が招いた名前空間の汚染が激しいように思う
223 :デフォルトの名無しさん :2015/06/04(木) 17:16:37.66 ID:yVQOALuO.net >>222 > ここ5年くらい、Web屋の無知と傲慢が招いた名前空間の汚染が激しい という無知
224 :デフォルトの名無しさん :2015/06/04(木) 18:11:41.00 ID:JWskV460.net >>223 おっWeb屋だ、元気? ところでv8をビルドするときに使う bootstrapスクリプトの機序をどうやって検索したらいいか教えてくれよw
225 :デフォルトの名無しさん :2015/06/04(木) 21:53:09.33 ID:PemmKaGK.net >>224 v8のビルド方法で検索すればいいんじゃね? 検索したら、How to Download and Build V8っていうのが見つかったけど。 https://developers.google.com/v8/build?hl=ja
226 :デフォルトの名無しさん :2015/06/04(木) 23:15:35.68 ID:U3atrZZO.net >>222 世の中の大半は、おまえより生産的で知識豊富な人たちが開発したと思ってるけどね
227 :デフォルトの名無しさん :2015/06/05(金) 07:38:59.00 ID:DEUjZ497.net >>226 そういう話はキッチリソースつけて、話してくれや。
228 :デフォルトの名無しさん :2015/06/05(金) 09:03:32.52 ID:P0ImBG10.net キッチ&リリース
229 :デフォルトの名無しさん :2015/06/07(日) 07:11:03.31 ID:ohZIkVP1.net ま、ウェブ屋の大半が馬鹿なのは本当だろう 巨大なページに普通のjquery適用させて重い重い言ってるのよく見るしな
230 :デフォルトの名無しさん :2015/06/07(日) 10:09:01.52 ID:QDivtYyn.net 中古のスマホやタブレットでデザイナーに作られたようなjQuery満載の糞ページを表示させると電力不足を引き起こされてバッテリー残量が正確に認識されなくなってOSが緊急終了させられる。 今やスマホどころかタブレットもバッテリー内蔵で交換は困難/不可能だからバッテリーが寿命になっても使い続けられている端末はいくらでもある。
231 :デフォルトの名無しさん :2015/06/07(日) 10:38:19.95 ID:yTv0X04Z.net はいはい
232 :デフォルトの名無しさん :2015/06/07(日) 11:28:19.29 ID:J7/rKSpK.net >>229 とにかく書き捨ての糞プロジェクトが増えた こんな流れはGoogleがつくった感じする
233 :デフォルトの名無しさん :2015/06/07(日) 12:55:15.14 ID:+aAn4ks1.net 誰かのせいにして安心するのは間違ってる それは作った当人らの責任だろ
234 :デフォルトの名無しさん :2015/06/07(日) 21:23:07.05 ID:J7/rKSpK.net 詐欺業者が横行してて 姉歯的案件だらけだよ 年金記録流出も起こるべくして起きた
235 :デフォルトの名無しさん :2015/06/08(月) 02:32:14.37 ID:DLynV3iC.net なんだお前ら生理か?
236 :デフォルトの名無しさん :2015/06/08(月) 04:59:15.44 ID:TkpGbpl3.net ソフトバンクテレコム()
237 :デフォルトの名無しさん :2015/06/17(水) 17:09:08.15 ID:FiJHYwC6.net 関係無いけど久しぶりにJSLint使おうと思ったら随分変わってるのな つーか何で x /= 3; でストップするんだ?わけわからんのだが
238 :デフォルトの名無しさん :2015/07/02(木) 17:04:18.93 ID:p+4VzYpK.net 他人が作ったコードをメンテすることになってJSDocアノテーションされてたので ドキュメント化しようという話になった 開発時にはがJSDoc Toolkit(https://code.google.com/p/jsdoc-toolkit/ )を使っていたようなのだが それはすでにサポート終了してテンプレートも消えていた それでJSDoc3(https://github.com/jsdoc3/jsdoc )を試しているのだがデフォルトのテンプレートが どうにも満足のいかないものだったので、テンプレートをいくつか探して試した なかには not found のエラーを出すものがあり、そろそろ疑問に感じてきた それで JSDoc を jsdoc -T としてテスト実行してみたところ大量の not found えっ? テストしてないでリリースしてるの? それともこちらの環境の問題? ちなみに Windows 7 環境で同梱のバッチで実行してるのだけれども java 上で動くのだからその辺は一緒のはず? javaランタイムのバージョン? もし Windows 上で JSDoc3 を使っている方がいたら 安定して動作している環境を教えてほしい
239 :デフォルトの名無しさん :2015/07/02(木) 17:09:48.72 ID:eJl3FSc8.net >>238 $ git clone https://github.com/jsdoc3/jsdoc Initialized empty Git repository in /home/hoge/src/jsdoc/.git/ remote: Counting objects: 16429, done. remote: Total 16429 (delta 0), reused 0 (delta 0), pack-reused 16429 Receiving objects: 100% (16429/16429), 16.16 MiB | 377 KiB/s, done. Resolving deltas: 100% (8177/8177), done. $ cd jsdoc/ $ ./jsdoc -T Running tests... .....(略).... Finished in 4.993 seconds 1163 tests, 2965 assertions, 0 failures .....(略).... Finished in 0.054 seconds 33 tests, 60 assertions, 0 failures
240 :デフォルトの名無しさん :2015/07/02(木) 17:10:25.70 ID:eJl3FSc8.net あ、これCentOS 6.6ね。
241 :デフォルトの名無しさん :2015/07/02(木) 17:11:59.32 ID:eJl3FSc8.net ちなみに、 $ java -version openjdk version "1.8.0_45" OpenJDK Runtime Environment (build 1.8.0_45-b13) OpenJDK 64-Bit Server VM (build 25.45-b02, mixed mode)
242 :デフォルトの名無しさん :2015/07/02(木) 17:18:31.81 ID:p+4VzYpK.net 同じ手順を Windows 上の Git Bash にて行ってみた $ git clone https://github.com/jsdoc3/jsdoc Cloning into 'jsdoc'... remote: Counting objects: 16429, done. remote: Total 16429 (delta 0), reused 0 (delta 0), pack-reused 16429 Receiving objects: 100% (16429/16429), 16.16 MiB | 1.17 MiB/s, done. Resolving deltas: 100% (8177/8177), done. Checking connectivity... done. Checking out files: 100% (620/620), done. $ cd jsdoc/ $ ./jsdoc -T js: exception from uncaught JavaScript throw: Error: Module "c:/Users/xxxxxx/Documents/GitHub/jsdoc/jsdoc.js" not found. うわーん
243 :デフォルトの名無しさん :2015/07/02(木) 17:20:04.04 ID:p+4VzYpK.net $ java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b15) Java HotSpot(TM) Client VM (build 25.45-b02, mixed mode) です
244 :デフォルトの名無しさん :2015/07/02(木) 17:21:39.94 ID:eJl3FSc8.net >>242 Windowsは、jsdoc.cmdを実行するみたいだよ。 ただ、俺には理解不能なエラーが出た。 Javaとか知らんし。 > $ .\jsdoc.cmd -T > Running tests... > org.mozilla.javascript.EcmaError: ReferenceError: "self" is not defined. (file:/C:/Temp/jsdoc/node_m > odules/bluebird/js/main/captured_trace.js#464)
245 :デフォルトの名無しさん :2015/07/02(木) 17:34:40.81 ID:p+4VzYpK.net やっぱ Linux環境を用意しないとダメなんかなあ ただテストではエラー出るけど実際に使ってみた際にはエラーは出ないんだよなあ テンプレートはデフォルトと https://github.com/Nijikokun/minami https://github.com/davidshimjs/jaguarjs-jsdoc はエラー無しで通った https://github.com/bvalosek/jsdoc3-bootstrap https://github.com/terryweiss/docstrap https://github.com/DBCDK/jsdoc3Template はダメだった
246 :デフォルトの名無しさん :2015/07/02(木) 17:43:03.98 ID:eJl3FSc8.net Macでもやってみた。 3年位使ってたけど、Java入ってないし。JDKのインストール方法をググる所から始めた。 Web開発にMac使ってる人が多いのは、こういうところかもね。 $ ./jsdoc -T Running tests... ....(略)... Finished in 3.486 seconds 1163 tests, 2965 assertions, 0 failures ....(略)... Finished in 0.024 seconds 33 tests, 60 assertions, 0 failures
247 :デフォルトの名無しさん :2015/07/02(木) 18:58:45.62 ID:p+4VzYpK.net あとでちゃんと JDK 入れてみるか
248 :デフォルトの名無しさん :2015/07/17(金) 23:16:41.01 ID:GZ2lmC/i.net ttp://www.bluefoun.pos.to/games/howto/htimg.html ここに出てくる関数gameBodyって意味あんのか・・・? これ書いただけじゃ何も実行できんぞ
249 :デフォルトの名無しさん :2015/07/17(金) 23:24:31.53 ID:XR8NxmBX.net はーい今日のおバカさん↑登場
250 :デフォルトの名無しさん :2015/07/24(金) 23:57:05.40 ID:QlYyU5j9.net 迷子なんでここでいいかな? cordova(phonegap)で躓いてるんだけど、専用スレが見当たらない 誘導plz
251 :デフォルトの名無しさん :2015/07/25(土) 00:05:32.97 ID:385UensT.net そもそもフレームワークスレがないんだわ 自分で建ててもいいんじゃない
252 :デフォルトの名無しさん :2015/07/26(日) 00:45:58.44 ID:Nu2ySp1+.net webアプリの伝票を表示する画面のHTMLで、テーブルタグでエクセル方眼紙作ってあった 列とか必要以上に多くて無駄にセルの結合してあった
253 :デフォルトの名無しさん :2015/07/26(日) 00:46:27.27 ID:Nu2ySp1+.net gbk
254 :デフォルトの名無しさん :2015/07/26(日) 08:27:53.84 ID:lKG+wP//.net >>252 すごく重そうなサイトだなーw
255 :デフォルトの名無しさん :2015/08/02(日) 18:40:44.98 ID:mqZtRy/B.net 数字の1と文字の1が一致して笑った。 カス言語すぎる。
256 :デフォルトの名無しさん :2015/08/02(日) 18:45:01.04 ID:dTRZmQiN.net たしかperlも一致してた気がする
257 :デフォルトの名無しさん :2015/08/02(日) 19:22:32.84 ID:sI4u8psA.net === とか !== を知らないのだろうか?
258 :デフォルトの名無しさん :2015/08/02(日) 19:23:25.05 ID:ea/y5J7a.net JSは互換を安易に切れないからな 残りカスのような変な仕様は山ほどある
259 :デフォルトの名無しさん :2015/08/02(日) 19:30:32.53 ID:qmwBoa+Z.net >>252 もしかしてマジでEXCELでデザインしたものを変換してるのかもな
260 :デフォルトの名無しさん :2015/08/02(日) 19:34:25.89 ID:56YeXZNf.net ===使わないとか狂ってるな カス過ぎる
261 :デフォルトの名無しさん :2015/08/02(日) 19:37:57.46 ID:qmwBoa+Z.net むしろ==の使いどころがよくわからん
262 :デフォルトの名無しさん :2015/08/02(日) 19:41:23.07 ID:mqZtRy/B.net じゃあ、==の存在意義はなんだよ
263 :デフォルトの名無しさん :2015/08/02(日) 19:49:47.26 ID:dTRZmQiN.net explicit宣言で==がsyntaxerrorになったりせんのけ
264 :デフォルトの名無しさん :2015/08/02(日) 20:51:00.19 ID:j05l/s8s.net 変数に型がない言語ではどうしても、 == と === 相当の機能が必要になる。 変数に型がない言語では全て同じ。
265 :デフォルトの名無しさん :2015/08/02(日) 21:47:56.95 ID:sI4u8psA.net ID:mqZtRy/B は素直に静的な型宣言を必要とするコンパイル言語を使っとけ
266 :デフォルトの名無しさん :2015/08/02(日) 22:13:12.22 ID:dTRZmQiN.net CoffeeScriptおすすめですお
267 :デフォルトの名無しさん :2015/08/02(日) 22:15:15.51 ID:j05l/s8s.net 言語としては悪くないが、 将来性として悪い。 BabelなどでES6が使えるようになった今、 CoffeeScriptの役目は終わった。 優位性が無くなったのだから。 CoffeeScriptはES6をつくるための 犠牲になったのだ。
268 :デフォルトの名無しさん :2015/08/02(日) 22:36:51.46 ID:+B7/KlLQ.net >>262 null == undefinedがありますので
269 :デフォルトの名無しさん :2015/08/02(日) 23:11:50.36 ID:Q2JrvHPp.net >>263 JSLint使っとけ
270 :デフォルトの名無しさん :2015/08/03(月) 05:17:31.66 ID:M3KvY+a0.net >>264 luaならそんなクソ仕様ないけど
271 :デフォルトの名無しさん :2015/08/03(月) 20:20:01.84 ID:OzQ4PZKS.net >>270 でもこういうクソ仕様はありますね。 2.2.1 - 変換 Luaは文字列と数値を実行時に自動的に変換する。 すべての数学演算は、 文字列に適用されると、一般的な変換ルールに基づいてその文字列を数値に変換しようとする。 ただし、例外があって 2.5.2 - 関係演算子 2.2.1 の変換ルールは等価比較には適用されない。 そのため、"0"==0 は false に評価され、 t[0] と t["0"] は異なったテーブルエントリを示す。 一貫性がない。
272 :デフォルトの名無しさん :2015/08/04(火) 11:19:43.50 ID:Wrx2TKJj.net NaN !== NaN は他言語でもそうなのかな これだけは直感的でないと感じてしまう
273 :デフォルトの名無しさん :2015/08/04(火) 20:47:31.71 ID:LaebqzUe.net >>272 Rubyも同じ http://docs.ruby-lang.org/ja/search/class:Float/version:2.0.0/query:NAN/ > ただし、NaN 同士の比較では常に false を返します。 Pythonでも同様 http://d.hatena.ne.jp/yosshi71jp/20090920/1253415431 > nanは非数(not a number)、infは無限(infinity)。通常、 > この表示になってしまったら、これにどんな演算を行っても、結果はもう変わらない。 PHPでも PHP 型の比較表 http://php.net/manual/ja/types.comparisons.php > この値を、自分自身を含む他の値と比較すると、緩い比較であっても厳しい比較であっても > 結果は FALSE となります (つまり NAN != NAN であり NAN !== NAN であるということです)。 さらにPerlでも http://perldoc.jp/docs/perl/5.6.1/perlop.pod > NaN はどの値に対しても(NaN に対してでさえも) "<", "==", ">", "<=", ">=" の > いずれも成立しないので、これらは全て偽となります。 SQLでも似た仕様がある。 NULL は NULL と等しくない!? http://blog.livedoor.jp/i_am_best/archives/7845603.html
274 :デフォルトの名無しさん :2015/08/04(火) 20:48:25.72 ID:LaebqzUe.net >>272 > NaN !== NaN は他言語でもそうなのかな > これだけは直感的でないと感じてしまう 直感的じゃないという意見はわからなくもないが、 他言語でも同じなわけで、それを知らないということは、 君の経験不足ってのがよく分かるねw
275 :デフォルトの名無しさん :2015/08/04(火) 20:50:43.13 ID:LaebqzUe.net ついでに調べた。 C#も同じ http://d.hatena.ne.jp/tgk/20061109/1163069036 Javaも同じ http://d.hatena.ne.jp/Kappuccino/20080805/1217905115 C言語でも同じ http://www.c-tipsref.com/words/not_a_number.html > NaN を使った算術演算の結果は常に NaN になる
276 :デフォルトの名無しさん :2015/08/04(火) 21:03:34.53 ID:SiN2Ipli.net a = NaN, b = NaN aとbを比較しようとしたときにどういう問題が発生するか考えれば納得出来るだろう
277 :デフォルトの名無しさん :2015/08/04(火) 21:18:44.87 ID:LaebqzUe.net >>276 わかりづらいw var a = "a"; var b = "b"; parseInt(a) == parseInt(b) これがtrueだとおかしいだろ? ぐらいのことを言えよ。
278 :デフォルトの名無しさん :2015/08/04(火) 21:25:12.39 ID:MmQrnXHp.net は? NaN という状態の意味を考えろよ? 言語でしか考えてなくてコンピュータで処理するってこと微塵も考えてないだろ?
279 :デフォルトの名無しさん :2015/08/04(火) 21:34:13.30 ID:SiN2Ipli.net >>277 分かろうとする努力が大切
280 :デフォルトの名無しさん :2015/08/04(火) 21:38:57.14 ID:eMvPKlqH.net NaNでそーなるのっ!? (ジャンプ)
281 :デフォルトの名無しさん :2015/08/04(火) 21:56:56.46 ID:2w4CQfTI.net >>274 他言語の経験がないのは認めるけど、煽りとかどうでもいいから NaN !== NaN が成立する合理的な理由があるなら教えて欲しい 「他言語でもそうだから」という教科書的な答えでは納得できない >>276-277 その比較はする必要性を全く感じないので、そのコードの目的がわからない null, undefined は等価なのに NaN だけ特別扱いする理由がわからない
282 :デフォルトの名無しさん :2015/08/04(火) 22:14:51.15 ID:SiN2Ipli.net >>281 nullやundefinedは演算の結果でなるものではない
283 :デフォルトの名無しさん :2015/08/04(火) 22:56:02.17 ID:MmQrnXHp.net >>281 null や undefined は言語上で特定の意味を与えられた値にすぎない NaN はそれとは全く違う 不正な演算によって生じた結果を表す状態で、これは言語ではなくてコンピュータの仕組みから定義されているもの 「不正な値」だと理解してもらっていい 不正な値なので大小比較自体が成立しないのでその結果も不明となる あとは自分で NaN をググるなり、コンピュータでの数値表現について勉強するなりしてくれ
284 :デフォルトの名無しさん :2015/08/04(火) 23:21:37.01 ID:2w4CQfTI.net >>282-283 NaN は Number ではない不定値のようなものか 何となくだが、理解した ありがとう
285 :デフォルトの名無しさん :2015/08/05(水) 00:11:47.63 ID:GLQwjMtk.net しかし大小比較自体が成立しないんだったら 言語側では例外を投げてもいいような気もするが IEEE754で演算上の振る舞いも規定されているのか
286 :デフォルトの名無しさん :2015/08/05(水) 07:43:38.95 ID:dSgZbAfK.net >>284 NaNが何の略か知らないの?
287 :デフォルトの名無しさん :2015/08/05(水) 07:46:27.13 ID:PB1eetSA.net NaNの略かだって?
288 :デフォルトの名無しさん :2015/08/05(水) 09:03:37.80 ID:HdJkl2eK.net Number and Number
289 :デフォルトの名無しさん :2015/08/05(水) 11:11:39.52 ID:A+1+0YPe.net >>286 "Not a Number" だろう? "Not a Number" からは不定値か固定値かは読み取れないと思うが
290 :デフォルトの名無しさん :2015/08/05(水) 13:37:35.99 ID:PzT2XX1y.net isNaN
291 :デフォルトの名無しさん :2015/08/05(水) 16:16:26.21 ID:xgMUKO3v.net 現行スレ + JavaScript の質問用スレッド vol.125 + [転載禁止] http://peace.2ch.net/test/read.cgi/hp/1436910657/l50
292 :デフォルトの名無しさん :2015/08/05(水) 18:24:22.43 ID:KU6oSpKD.net ナンだって?
293 :デフォルトの名無しさん :2015/08/05(水) 19:53:39.57 ID:HdJkl2eK.net / {;;;;;;> _八_ :: :| /) ..:::::::::::ヽ ( : | , - ' .. '' {.. :::( 丶 _) | /.... ,.... .. ::: ::: | _/{:::::r‐ ,.::::::::::/ : : } _ イ ::::: {:::::::::}. ... ::: . ´ ^} _... , ィ ... :: .. :: , :::::::::::: .:. . ,' /::: . ´ ゛ :::::: :: ::::::::) ...:::.::. } .. イ:...:: ´ ,..::::::::::::::. ..::::.. :::"゛.. :::: ,' ,.´ ... .:. :: ´(::::::::: ゝ .:::::::ノ ;.. ハ .. ,′ . / {::::::::.. ::: :::: "" :: ...... ⌒ヽ { { /:::. / .... -<:: :::::::(::::::: } レ:::::::::::... { . {ヽ < ::: :: :: :::: { :::::::::::: ヽ {:: .. ___{ ,....:.:.:.:.::ヽ ,. { i:::::::::::: | ヾ:::: ´ ,'.:.:.:.:.:.:.:.:.:. :: .::. ゛"゛ .,′ \ y :.:.:.:: ヾ:: :: :: } .. /: `,´ / . \ ..::.::.::.. ` ::::::ゝ :: ::: ::. / \ ヾ:._.: .. ,:.: − _ン \ ::::: ... .. . "゛ ,..ィ ~ ヽ _ :::: ....:::. ::::::::::_ .ン  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
294 :デフォルトの名無しさん :2015/08/05(水) 19:57:24.97 ID:HdJkl2eK.net / ヽ / ヽ / 人 ト、 | / >‐ァ / _\ ! jノ / / / /,=彡'⌒ V ,=ミ \ / / / r==彡tテ丁> ∨ /ヽ | \___, // / __ /`¨´ ヽ.ゞ'′ リ ノ / _ノ {' . ′ ⌒≫t示 / < / >ヘヽゞイ ∨ ヽ / ,, ’ ヽ丿 ∨ ! / _ .. ´ `ー _,. -‐'’ / \f⌒ヽ. |  ̄ ヽ ´ / \ ヽ! \ / ! /`≫‐- -‐…‐- \ / ! /`y'´ // ̄) `丶 _ア爪 .' /`y' // / ‘, -‐</ノ ヽ ′/`y' // / L ,-< ∨\ ! _, イヽ/ | し' 丿 | / ヽ. ヽ/ 丁 〉 // | r−、 / / / .′  ̄  ̄ | U `ー― - イ / / ' | U | / ! 若草物語 ナンとジョー先生
295 :デフォルトの名無しさん :2015/08/05(水) 22:58:19.31 ID:Vg22nrpW.net これからjavascript一本で生きます よろしくおねがいしまうー
296 :デフォルトの名無しさん :2015/10/04(日) 11:02:40.14 ID:K1qsk9YZ.net よくsetTimeoutつかって関数を一定時間繰り返し実行する例を見るけど メモリリーク(スタックオーバーフロー)しそうな気がしてならねえ function viewTime() { var date = new Date();//これはスタックに貯まるのか? console.log("date = " + date); setTimeout(viewTime,1000); }
297 :デフォルトの名無しさん :2015/10/04(日) 11:03:55.39 ID:K1qsk9YZ.net ああ違う、非同期だからsetTimeoutが終わった時点で消滅するのか 納得
298 :デフォルトの名無しさん :2015/10/05(月) 02:42:12.90 ID:uvbnrVeH.net 割り込みとかイベントハンドラとかそういう概念
299 :デフォルトの名無しさん :2015/10/05(月) 06:12:57.62 ID:cBREl52D.net ローカル変数なんだから関数終了で破棄されるだろ 非同期とか割り込みとか関係無い
300 :デフォルトの名無しさん :2015/10/05(月) 06:40:12.29 ID:sGblq84u.net >>299 わからんやつだな setTimeout が 指定時間後に実行する関数を設定しているだけでそこで呼び出してるわけじゃない ってすぐに理解できてないと viewTime() setTimeout() viewTime() setTimeout() viewTime() ... みたいに再帰呼び出ししてるように錯覚しちゃうってことだろうよ 再帰呼び出しなら呼び元は終了してないからやばいよね 次の段階として、非同期で呼ばれるとなんとなく理解はしていても 別のコンテキストで実行されるってのがわかってないと this とか使ってあれえ?ってなことになる
301 :デフォルトの名無しさん :2015/10/05(月) 09:58:01.89 ID:YN/6GJzS.net >>300 それは仮想的なコードだと思うけど、クロージャじゃないんだから一回毎に viewTime 内のメモリはGCが解放してくれないとおかしいんじゃない? そうでなければ、ブラウザのバグだと思うけど
302 :デフォルトの名無しさん :2015/10/05(月) 14:17:26.26 ID:zntwOtDH.net エスケープ解析!
303 :デフォルトの名無しさん :2015/10/11(日) 11:55:20.75 ID:+pNyRU9BN >>301 一般的な関数は実行後に戻ってくるから 再起呼び出しのようにスタックに積みまくってると錯覚するって意味で
304 :デフォルトの名無しさん :2015/10/26(月) 04:16:59.02 ID:AGaCWwZd.net はい現行スレ http://peace.2ch.net/test/read.cgi/hp/1444186237/l50
305 :610 :2015/11/05(木) 21:03:50.50 ID:O9StB1rc.net じゃあここでいいぞ。 一応俺のスタンスを言っておくと、俺はお前みたいな奴が嫌いじゃない。 お前はあのスレの中で唯一積極的にコードを書き、IDを付けて議論に持ち込み、論理的に解決しようとする。この点はいい。 ただなあ、技術的に余りにも稚拙すぎるから、色々空回りしている。 だからやる気があるのなら少しはサポートしてやるよ。上達したいかどうかはお前が決めろ。 ちなみにマジでウザイから無駄に吠えるのは止めろ。お前が大したことがないのは事実なんだよ。 今のお前ではあのベンチマークがどれだけ間抜けなことになっているのか分からないのだろうが、 上達した後から読み返せば今のお前の痛さは発狂レベルだぞ。 まあ、今のお前には俺が嘘を言っているとしか思えないのだろうけども。 とはいえ、あのスレの中の初心者で上達する可能性があるのはお前だけだ。 他の馬鹿共はお前と同様にあのベンチの問題が分からないにもかかわらず、煽ることしかできない無能共だ。 そもそも俺はお前みたいに「自分でやる」タイプじゃないとプログラミングには向かないと思っているので、 一から教えてくださいとか言われても死ねとしか思わない。 だからあのスレにたむろしている馬鹿共が何であそこにいるのかも謎なんだが。 もしやるのなら、こちらのスレの内容は向こうには投稿しないように。ゴミ共が増えるだけだから。 ベンチマークの結果がデタラメすぎるので訂正したくなると思うが、その必要もない。 心配せずともJavaScriptの個人的Web情報はデタラメばかりだし、 馬鹿は馬鹿のままでいればいいし、強制的に教育する方法もないんだよ。 今のお前のように、自分で馬鹿を止めますと決心させるしかないんだ。 そして自分で学ぼうとする心がある奴は、あの経緯ならこちらを見ている。だから、転載する必要は全くない。 マジであのスレ終わっているぞ。いろんな意味で。 まあとにかく、どうするかはお前が決めろ。
306 :デフォルトの名無しさん :2015/11/05(木) 21:49:27.17 ID:VallSrWs.net お前が一番終わってる
307 :デフォルトの名無しさん :2015/11/06(金) 18:35:45.77 ID:F7EIvq3A.net どこで拾ったコピペ?
308 :デフォルトの名無しさん :2015/11/11(水) 10:08:35.38 ID:M5AnRRSD.net >>305 の輝かしい功績 + JavaScript の質問用スレッド vol.126 + http://peace.2ch.net/test/read.cgi/hp/1439005423/ + JavaScript の質問用スレッド vol.125 + [転載禁止]©2ch.net http://peace.2ch.net/test/read.cgi/hp/1436400138/ + JavaScript の質問用スレッド vol.124 + [転載禁止©2ch.net http://peace.2ch.net/test/read.cgi/hp/1427008867/l50 + JavaScript の質問用スレッド vol.123 + [転載禁止©2ch.net http://peace.2ch.net/test/read.cgi/hp/1422084185/l50 + JavaScript の質問用スレッド vol.123 + [転載禁止©2ch.net http://peace.2ch.net/test/read.cgi/hp/1423910471/l50 + JavaScript の質問用スレッド vol.122 + [転載禁止©2ch.net http://peace.2ch.net/test/read.cgi/hp/1418395948/l50 + JavaScript の質問用スレッド vol.121 + http://peace.2ch.net/test/read.cgi/hp/1410603104/l50
309 :デフォルトの名無しさん :2015/11/28(土) 21:50:08.90 ID:u/RqRVR/.net 立てました。よろしく。 JavaScript情報交換所(プログラミング既習者専用) http://peace.2ch.net/test/read.cgi/tech/1448714123/
310 :デフォルトの名無しさん :2015/12/06(日) 22:19:33.92 ID:NQ6kkq7S.net Microsoft、「Edge」のJavaScriptエンジン「Chakra」をオープンソース化へ http://www.itmedia.co.jp/news/articles/1512/06/news012.html
311 :デフォルトの名無しさん :2015/12/07(月) 00:52:50.11 ID:D3MoacxB.net チャクラとか あっちにアジアかぶれがいるのかな
312 :デフォルトの名無しさん :2015/12/07(月) 08:33:58.70 ID:d0GjWYYK.net MSの今のCEOってインド系だったような
313 :デフォルトの名無しさん :2015/12/07(月) 15:57:54.79 ID:KuRdWB2c.net 小川美潮
314 :デフォルトの名無しさん :2016/03/20(日) 12:13:50.50 ID:k733Y0LD.net 保守
315 :デフォルトの名無しさん :2016/03/26(土) 00:52:55.36 ID:VGHlAznE.net with(this){してその中でプロパティ読むのってアリ?}
316 :デフォルトの名無しさん :2016/04/01(金) 09:32:53.04 ID:WD++Qk2m.net withはjavascriptの汚点。今すぐ脳内から消去しろ。
317 :デフォルトの名無しさん :2016/05/01(日) 15:21:38.46 ID:tKi6j9CT.net 匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、 BitTorrentがオープンソースで開発されています 言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか? Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします https://twitter.com/Lyrise_al ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw The Covenant Project 概要 Covenantは、純粋P2Pのファイル共有ソフトです 目的 インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します 特徴 Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW) 接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です DHTにはKademlia + コネクションプールを使用します UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります) 検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません :
318 :デフォルトの名無しさん :2016/06/09(木) 17:18:01.82 ID:dpBG783z.net たまにwithあったらなって思うことはあるな 例えばWebpackがモジュールに引数で渡す挙動とか
319 :デフォルトの名無しさん :2016/06/29(水) 13:17:10.60 ID:+ZYTNDiN.net http://www.cybersyndrome.net/ ここの検索結果画面、例えば http://www.cybersyndrome.net/search.cgi?q=&a=&f=&s=&n= からプロキシ一覧を取得しようとしてXMLHttpRequestを使ってresponseTextを見てるんだけど どうもscriptを動かさないとプロキシが表示されないみたい そんなわけでresponseTextの中の3番目のスクリプトを動かしてプロキシ一覧を表示させたいんだけど どうするのが良策ですか?ちなみにChrome
320 :デフォルトの名無しさん :2016/06/29(水) 13:24:53.48 ID:oESip30m.net Node.js
321 :デフォルトの名無しさん :2016/06/29(水) 13:52:20.39 ID:+ZYTNDiN.net scriptを取り出してevalで行けました
322 :デフォルトの名無しさん :2016/10/26(水) 10:00:03.07 ID:LA3y7fsO.net java挫折したんでこっちにきました だいぶとっつきやすい・・・気がする
323 :デフォルトの名無しさん :2016/10/26(水) 13:13:36.39 ID:6SHMskVi.net そりゃまったく別物だからな
324 :デフォルトの名無しさん :2018/02/16(金) 06:29:27.57 ID:W1XJdyx1.net ☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の 両院で、改憲議員が3分の2を超えております。 『憲法改正国民投票法』、でググってみてください。国会の発議は すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
325 :デフォルトの名無しさん :2018/02/25(日) 23:50:49.29 ID:2698yb5F.net javascriptで配列の要素それぞれに関数を作用させて要素を作るってできますか? var a = [1,2,3]; function f(x){return x+1;} var b = f(a);// b = [2,3,4]; みたいな
326 :デフォルトの名無しさん :2018/02/26(月) 00:26:00.52 ID:368iDdw7.net Arrayのmap()
327 :デフォルトの名無しさん :2018/02/26(月) 00:26:46.50 ID:rSDo4ycn.net >>326 ググります、ありがとう
328 :デフォルトの名無しさん :2018/03/04(日) 23:55:48.77 ID:fY1aJvVU.net javascriptの正規表現で A/B/C(http://hoge.com/fuga)/X/Y このような文字列を/で分割したいが、()の中の/は分割の対象にしない ということはどのようにすればいいでしょうか?
329 :デフォルトの名無しさん :2018/03/05(月) 00:28:19.92 ID:1eWHTsKF.net >>328 括弧がネストしてなければnegative lookahead”(?!)”で ネストしてたら知らん https://regex101.com/r/j03SqS/2/
330 :デフォルトの名無しさん :2018/03/05(月) 00:58:40.26 ID:1SNP3/tO.net ありがとうございます ネストしてないのでこれで事足りそうです
331 :デフォルトの名無しさん :2018/03/10(土) 21:38:04.28 ID:LJUwa8tD.net XMLHttpRequestを使って取得したページのスクリプトを実行させようとしているのですが できません 取得したページを構成 var doc =document.implementation.createHTMLDocument(""); doc.body.innerHTML =req.responseText; このdocの中のscriptタグを取り出し 新たにscript elementをdoc.createElement("script")で作りコピーし 更にappendChildでスクリプトを追加し直せば実行されるかと思いましたがされませんでした(Chrome) なにかいい知恵はないでしょうか
332 :デフォルトの名無しさん :2018/03/10(土) 21:52:05.17 ID:LJUwa8tD.net 今ふと思ったのですが 作っているものがChromeの拡張機能なのでセキュリティ設定で外部のスクリプトができないようになってるだけかもしれません ちょっと見直してきます
333 :デフォルトの名無しさん :2018/03/10(土) 21:58:41.22 ID:32LTkPVU.net >>331 何でそんなことしたいのかわからないがセキュリティ的に問題あるよ https://developer.chrome.com/extensions/xhr#security-considerations
334 :デフォルトの名無しさん :2018/03/10(土) 23:06:06.97 ID:LJUwa8tD.net なるほど とりあえず目的に対して別の方法を思いついたのでスクリプトの再実行はやめておきます
335 :デフォルトの名無しさん :2018/05/23(水) 22:22:52.48 ID:Au5e7VGg.net 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方 役に立つかもしれません グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』 9O7AM
336 :デフォルトの名無しさん :2018/07/04(水) 23:42:45.95 ID:gFgZc5FG.net C4H
337 :デフォルトの名無しさん :2018/08/15(水) 08:39:41.98 ID:tlm7UXZ5.net "abcde?fgh".match("e?f") これが ["f", index: 6, input: "abcde?fgh", groups: undefined] になるんですが(chromeブラウザのコンソールで確認) 文字列の中の?ってどういう扱いなんでしたっけ?
338 :デフォルトの名無しさん :2018/08/15(水) 15:22:13.30 ID:2DBKebDY.net 文字列中じゃねーよ正規表現中の?の意味を調べろ
339 :デフォルトの名無しさん :2018/08/15(水) 18:38:51.76 ID:tlm7UXZ5.net match("e?f")の"e?f"は文字列リテラルじゃなくて正規表現/e?f/と解釈されるということですか?
340 :デフォルトの名無しさん :2019/07/05(金) 21:42:57.25 ID:efC0bxMu.net javascriptのオブジェクトの書き方で {hoge:hoge}とかこうとして{hoge,hoge}と書いてエラーにならなかったんですが これって有効なんですかね?
341 :デフォルトの名無しさん :2019/07/07(日) 04:01:24.27 ID:3hjPphCG.net 単に同じキーが2回設定されるだけだな
342 :デフォルトの名無しさん :2019/07/07(日) 07:36:01.32 ID:vLazMOH7.net >>341 https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Strict_mode
343 :デフォルトの名無しさん :2019/07/07(日) 10:14:41.57 ID:3ySSrzHj.net あーわかりました var a = 2; で var x = {a}; とすると var x = {a:2}; と同じになるんですね >>342 勉強になります
344 :デフォルトの名無しさん :2019/07/13(土) 23:14:14.21 ID:57lWPs8z.net https://mevius.5ch.net/test/read.cgi/tech/1489511075/862 で質問した者なのだけど、 String.matchとRegExp.execの挙動の細かい違いについて分かる人居る? 仕様書はMDNから飛べるけど一応以下。 https://tc39.es/ecma262/#sec-string.prototype.match https://tc39.es/ecma262/#sec-regexp.prototype.exec 正直俺はよく分からない。 問題になるのは質問した内容で、再掲すると、 '@time;prop1:style1;prop2:style2'.match(/(^|[@;])[^@;]*/g); // 結果 ["", ";prop1:style1", ";prop2:style2"] 、俺の想定 ["", "@time",";prop1:style1", ";prop2:style2"] '@time;prop1:style1;prop2:style2'.match(/(^.|[@;])[^@;]*/g); // 結果 ["@time", ";prop1:style1", ";prop2:style2"] 、これは納得 の前者の挙動が謎だったのだが、 var re = /(^|[@;])[^@;]*/g; var str = '@time;prop1:style1;prop2:style2'; re.exec(str); // 結果 ["", ""] console.log(re.lastIndex); でちまちま調べる限り、lastIndexは0のまま固定されており、俺の『正規表現の』理解は間違いではないことは分かった。 当然これだとMDNのexecにあるような while ((myArray = myRe.exec(str)) !== null) みたいなことをすると無限ループする。 だから String.match はそうならないように何かしら対策がしてあって、結果、頭のマッチが取れないようだ。 なのだが、仕様書を見ても違うのは分かるが何がどうなのかよく分からない。 String.matchでは (^| の条件は駄目で、 (^.| のように、「文頭」ではなく「文頭の文字」に当たるようにしないといけない、ということなのか?
345 :デフォルトの名無しさん :2019/07/13(土) 23:28:56.86 ID:57lWPs8z.net すいません分かりました。 String.match は RegExp[@@match] を読んでて、その中で RegExp.exec を呼んでいる。 RegExp.exec は当然そのまま RegExp.exec を呼んでいる。 だからそのままだと当然挙動は同じになるのだけど、String.matchの場合、 > 4. If matchStr is the empty String, then > a. Let thisIndex be ? ToLength(? Get(rx, "lastIndex")). > b. Let nextIndex be AdvanceStringIndex(S, thisIndex, fullUnicode). > c. Perform ? Set(rx, "lastIndex", nextIndex, true). https://tc39.es/ecma262/#sec-regexpbuiltinexec って書いてあったわ。 つまりマッチ結果が空文字だと必ず一文字進めるようになっており、「文頭マッチのフラグを落とす」仕様にはなってない。 この仕様でいいのか?という気もするが、とにかくそうなっているようだ。 お騒がせしました。
346 :デフォルトの名無しさん :2019/07/16(火) 20:12:13.23 ID:hMJFhr7R.net というかこれはMDNに注意書きがいる案件だ。 勿論君の手柄にしてくれていいから、誰かやっておいてくれ。 追記は取り敢えず4ヶ所(3文案)か? 1. String.match に、 「空文字にマッチした場合、その空文字の次の文字にはマッチしません。 このため、空文字マッチを含む正規表現(オブジェクト)を与えた場合、全てのマッチ文字列が結果に含まれないことがあります。」 2. String.replaceに、 「空文字にマッチした場合、その空文字の次の文字にはマッチしません。 このため、空文字マッチを含む正規表現(オブジェクト)を与えた場合、全てのマッチ文字列が置換されないことがあります。」 3. RegExp.exexとRegExp.testに、 「空文字にマッチした場合、lastIndexが更新されません。(+1されません) このため、空文字マッチを含む正規表現(オブジェクト)を与えた場合、 ループ内でマッチ結果の空文字判定を行わないと、無限ループします。」 問題となるケースは、空文字マッチを含む正規表現+空文字マッチ直後にマッチ文字列が来る場合。 具体的には>>345 searchはgマッチ関係ないからセーフ、 splitに関係するケースがあるかは分からない。(ぱっとは思いつかない) matchAllは知らん。 ちなみに以前 test について文句を言った者だ。これについて対応してくれた人はありがとう。 今回も頼むわ。 なお今確認すると、 > 注目すべきは、別な文字列で検索しても lastIndex がリセットされないことです。 > https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test とモロに書いてあって素晴らしい。ただこれはもっと赤字とか目立つように書くべきだが。 俺はWeb板は無視しているが、これについてだけは告知貼っておく。 いずれにしてもMDNの更新誰かよろしく。
347 :デフォルトの名無しさん :2019/07/16(火) 20:29:14.99 ID:hMJFhr7R.net 告知は貼った。 https://mevius.5ch.net/test/read.cgi/hp/1562318008/ 何かあればここでよろしく。
348 :デフォルトの名無しさん :2019/07/17(水) 21:02:39.27 ID:5jOSOtas.net 言い出しっぺの法則
349 :デフォルトの名無しさん :2019/07/17(水) 22:42:05.96 ID:GQbqPuk7.net 言い出しっぺの法則は死んだ
350 :デフォルトの名無しさん :2019/07/17(水) 23:31:18.95 ID:2/Bgill9.net 俺は全世界の問題を一人で背負い込むほど若者ではないんだよ。 MDNの決定プロセスなんて知らんし、 それ以前に他人が噛むことにより「承認」の手続きがなされ、よりましな方向になると信じてる。 バグを見つけるのも十分な貢献だし、それをMDNに記載するのも同様だ。 だから一人でやる必要も意味もないし、それ以前に一人でやるべきではないと思ってるんだよ。 お前らが「こんなのMDNに記載する必要なし」と思うのなら放置でよし、 「こんな落とし穴があるのなら共有すべきだ」と思うのなら、 俺はテストパターンを提供したのだから、お前らはMDNを書き直すことによってcontributeしろ、ということ。
351 :デフォルトの名無しさん :2019/07/18(木) 15:10:58.24 ID:dK9bdFCv.net 一般的にはメンテナに投げるものだが MDNはアカウント登録さえすれば修正できるものなのか
352 :デフォルトの名無しさん :2019/07/20(土) 00:35:46.99 ID:YQUBknV3.net >>352 多分そう。おそらくwikiと同じシステム。 ただ内容は英語版の翻訳でしかないので、おそらく翻訳以外の提案は英語版に出さないといけないのではないかな?と勝手に推測。 いずれにしても、経験者がいるのならそいつに頼むのが確実、といったところ。 JavaScript界隈はWebに間違った情報が垂れ流されてるケースが多く、 それは要するに「背伸びして書くから」だ。 大して経験もないのにさも熟練者のように振る舞うとか、 会社にしたって「技術力の宣伝になる」と考えて精一杯背伸びして書いてる。 だからオイオイ?みたいなのも散見されるだろ。 しかしこれも使いようだ。言い方を変えればやる気はあるのだから、そういう奴らにはやらせればいいのだ。 問題は、そういった「背伸び」状態で書く内容はゴミな事が多いので、そうではなく、 ちゃんとした内容をこちらが提供してやろう、というわけ。 そしてMDN等にコミットして箔をつけたがっている奴にやらせ、 こちらは手間を省け、win-winだ。 というわけで誰か頼む。
353 :デフォルトの名無しさん :2019/07/20(土) 16:44:20.23 ID:xD7F1fq1.net 駄文書く手間暇は惜しまないのに
354 :デフォルトの名無しさん :2019/07/20(土) 17:17:10.12 ID:YQUBknV3.net だから既に言ったろ。 俺はこれは単独でやるよりも誰かにやらせる方が妥当だと考えてるんだよ。 それは、俺が間違っている可能性もあるから。 最低限、誰かが追試し、また、誰かが内容に賛同することを待つのは重要なことなんだ。 これによって暴走を防げる。 そしてMDNに書くこと自体は本来は大した作業量ではないが、 こういうのって往々にして政治的だから、場合によっては無駄に嵌ることになるんだよ。 実際、wikiだって編集合戦したり、その上で色々ルール決めたりしてるだろ。 MDNだって色々ある筈なんだよ。 だからそういうのを知ってる奴が出てきてどうするか話し合えるとしたらそれもありなんだよ。 日本みたいな根回し文化はないはずだとは思うけど、それも実際どうなのかは分からないし。 ただ、そこら辺を知ってる奴が本当にいたとして、 いちいちグダグダ説明するよりは自身で書き換えた方が早い、と判断すれば、勝手に書き換えてくれる。 前回も(ここに書いたのが反映されたかは確実ではないけど)「俺が書く」みたいな宣言もなく書き替わっていたし。 ROMな人が書き換えるのもありなんだよ。 いちいちグダグダ言ってくるのは若くてそれなりに正義感があるのだと思うが、 本件は1ヶ月後にきっちり書き替わってれば問題ないんだから、そんなにスピード感は要らないんだよ。 若くて元気があって、今後もJavaScriptに関わる気があるのなら、お前がやってくれたっていいんだぜ。 経験不足を自覚していて辞退するのなら、その点は俺が補ってやる、というわけでさ。 コミュニティは一人で回したり改善するものではないんだ。 各自がそれぞれ持ち寄って改善していくものなんだよ。 参加する気がある奴は出てこい、というわけ。(勿論黙って勝手にやってくれてても助かるが)
355 :デフォルトの名無しさん :2019/07/21(日) 07:40:42.79 ID:LnfTVLsY.net サンプルコードだけ書いて Hi! (sample & result) plz help me Thanks. で良い
356 :デフォルトの名無しさん :2019/07/22(月) 20:36:34.20 ID:dN38X5eV.net >>356 お前はプログラマを止めた方がいい。 今からのプログラマはその程度の英語能力では生きていけない。JavaScriptも当然該当する。 ネタならウザイだけだから止めろ。 今時の若者プログラマはお前以上に英語は出来るから、全く面白くもないしウザイ。 「英語」が最大の問題だとお前が勝手に捉えたのは、お前自身が英語が全く出来ないからだ。 問題はそこではない。 そして仮にお前のように「英語」が最大の問題なら、英語が出来る奴と協力すればいいだけだ。 それもせずに、カタコト以下の英語で結論すら書かないのは邪魔であり、スパムでしかない。 英語が出来ないお前みたいな馬鹿が何かMDN等にcoutributeしたいのなら、 お前が英語が出来ないことを認めて、誰か最低限の英語が出来る奴を募ることだ。 俺が今やっているような方法でもいい。 だから仮に、お前が俺の英語能力を心配してくれたというのなら、 当然お前の投稿は普通の日本人よりも圧倒的に上手い英語で書かれていないと話にならない。 明らかにそうではないのだから、お前は本当にウザイ。 ただな、日本人は最低限度の英語は書ける。 相手と対面して話しているわけではないのだから、時間は無限にあるし、ゆっくり考えて書けばいい。 上手い英語である必要はない。ただし伝わる必要はあるが、 細かい文法(三単現のsとか)なんて間違ったところで伝わるから全く問題ない。 だから書けばいいだけだ。 お前みたいな、英語が出来もしないのに出来る気取りの馬鹿は何もしないから上達出来ずそのままなんだよ。
357 :デフォルトの名無しさん :2019/07/22(月) 22:42:25.55 ID:l3HgfDB5.net >>356 ひとつだけ注文 レスアンカーはしっかりと合わせてくれないかな?
358 :デフォルトの名無しさん :2019/07/22(月) 22:46:00.86 ID:l3HgfDB5.net あと、できれば上から目線じゃなくて仲間として話をして欲しい
359 :デフォルトの名無しさん :2019/07/22(月) 23:27:25.55 ID:dN38X5eV.net >>357 何のことだ?と思って確認したが、 俺のJaneでは2に「ここ壊れてます」という投稿があって、一つずれているようだ。 F12で確認したところ、現在のデータにはないようなので、これは俺が合わせよう。 >>358 ゴミクズを丁寧に扱うのは断る。 ゴミクズが調子に乗るだけで、何の利益もないのはもう何度も経験している。 俺はゴミをゴミとして扱うだけであって、まともな奴にはまともに返事をしているつもりだ。 気に入らないなら無視でいい。お前が俺をゴミ扱いするのもお前の自由だ。 それ以前に、何でもかんでも「上から目線ガー」も死ねばいいと思っている。 お前のことだ。 俺がクズだとしても、それをMDNに書くかどうかは全く関係ないことだ。 クズからもたらされた情報であれ、正しければ、それなりに対処すればいいだけだ。 お前は何がしたいんだ? 俺はお前と群れようなんて1mmも思ってない。 俺は>>355 をゴミだと判断した。だから叩きを行った。これで正しいと思っている。 これに文句をつけるお前は「丁寧な態度」なら間違いであれMDNに書き、 「粗暴な態度」なら情報が正しくてもMDNには書かない、と推測されるわけだが、 それは俺から見たらコミュニティの破壊者でしかない。 去れ。俺がお前を仲間として認めることはない。 仲間として扱って欲しいのなら、最低限、その価値がある投稿をするべきだ。 ここは匿名掲示板であり、お前がリアルでどんな地位にいたとしても、知ったことではない。 ここでは各自の書き込みで各自を証明するしかない。 「内容」よりも「態度」を重視するお前は俺からすると十分ゴミだ。 何度も言っているが、俺はこの件をMDNに反映することに賛同し、汗をかこう、という奴を募っているだけだ。 汗をかく気もなく、ただ乗りだけ目指している奴なんてコミュニティには要らない。死ね。
360 :デフォルトの名無しさん :2019/07/23(火) 01:46:23.76 ID:QdrKAPEt.net 会話できない人暴れるの図かな
361 :デフォルトの名無しさん :2019/07/23(火) 23:14:48.71 ID:2rFxEmo/.net それで構わんぞ。 俺はゆとり----なにかにつけて「態度ガー」「上から目線ガー」「ぼくにやさしくしてくれなきゃいや」な連中----とは 価値観を共有出来ないし、したいとも思わない。 それ以前にゆとり的ポルポト型共産主義----「知識を持っていても持っていなくてもみんな平等」----も 間違っていると思っている。知らないよりは知ってる方が偉い、という価値観だ。 ただそれで異常に威張り散らす、例えば昔の仕様書廚みたいな奴を正当化することにはならんが。奴は異常だ。 俺が要求しているのは簡単なことだ。 ・MDNに俺が書く、という奴を募っている。 ・或いはこれに準じ、実際にMDNに書いたことのある奴からのノウハウの提供も待っている。 ・また、「文案が悪い」等の修正も勿論歓迎だ。 そもそも俺は仕様書を読み慣れておらず、最初から間違っている可能性すらある。 だからこの場合は反論とそれを証明するテストパターンを出してもらえれば素晴らしい。 というわけだ。 それをお前らゆとりは技術案件全無視で「態度ガー」しか言えないんだろ。 逆に言えば、「やさしくしてくれるひとならいうことをきく」という価値観な訳だが、 それは幼稚園児----お菓子をくれるから付いていく----と同レベルでしかない。 俺は幼稚園児とつるみたいなんて思ってない。
362 :デフォルトの名無しさん :2019/07/23(火) 23:15:20.18 ID:2rFxEmo/.net ただ、Web板久しぶりに見たが、前よりましになっているのに驚いた。 ゆとりというモンスター出現に右往左往している前世代より、 ゆとりがいる世界で育ったゆとり後期/さとりの方がゆとりの扱い方が上手いらしい。 実はこれは他の場所でも同傾向が散見されていたりする。 5-6年前:JavaScriptのスレは他言語に比べて異常にレベルが低かった 1-2年前:他言語にもゆとりが流入したらしく、他言語も著しく酷くなった 最近:JavaScriptのスレに復活の兆し? <-- new! 2-3年後:他言語スレも復活か? みたいな感じになってる。 JavaScripterは俺が思うに年齢層が他言語と比べて若い。だから先行指標になってる。 俺達がどうにも出来なかった荒らし共をWeb板の連中がどうやって追い払ったのかは分からないが、 いずれにしてもこの点についてはWeb板の連中の方が上だという事実は見えたので、俺は引き続き静観する。 (というより俺が余計なことをするとおそらく悪化するだけなので何もやらないし、読まない) ネットはゆとり撲滅運動をやるべきだ。 ゆとりは「ゆとりに対する人格否定は絶対に許さないが、気に入らない奴はとりあえず人格否定」な訳だろ。 今やってるように。 だから俺みたいに、「人格否定?やりたきゃやれよ。ゆとりみたいなクズに人格を認められる意味なんてそもそもない」 とされると対処出来ず、ひたすら人格攻撃連呼だろ。今みたいに。 全くお前らは勘違いしてる。クズからは否定された方がクズが寄ってこずに助かるものだ。 だから俺はそれをやってる。
363 :デフォルトの名無しさん :2019/07/23(火) 23:16:43.88 ID:2rFxEmo/.net ゆとりは本当に根本的に勘違いしてる。 俺にマウント取りたければ、仕様書をよく読んで俺の間違いを探せばいいだけだ。 俺に間違いがないのなら、俺が偉そうな態度を取ったところで『何も問題ない』だろ。正しいんだから。 ゆとりの「丁寧であれば間違ってても許される」って価値観が根本的に間違いだ。 まず「正しいかどうか」であって、態度がどうこうは二の次だ。人格攻撃でマウント取ろうってのがおかしい。 そしてこういう俺を気に入らないのなら最初から無視すればいいだけ。これも最初から言ってる。 おれはゆとりと会話したいなんて思ってない。相手するだけ時間の無駄だからだ。 ただ、これにさとりは気づき初めて対処出来ている。結果的に俺達はさとりに学ぶべき事があるのだとは思う。 ちなみに俺とゆとりとの差異は、典型的には>>355 を俺は「荒らし」だと見なしていることだ。 理由は「話が前に進まず、むしろ退行するから」だ。 これをゆとりは(俺の理解では) ・態度が偉そうではないから荒らしではない、むしろ偉そうなお前(俺のこと)が荒らし ・ゆとりは馬鹿だから英語が出来ない、だからみんな自分と同じで英語が出来ないと思っているし、思いたい ・そして英語が出来ないことも悪いなんて微塵も思ってない、むしろみんな違ってみんなイイ! ・それをガーガー喚き散らすお前(俺のこと)なんて大嫌い!それ!人格否定攻撃! な幼稚園児レベルの価値観だ。だからゆとりが混ざるとコミュニティは崩壊していく。 いやゆとりにとってはそれが居心地がいいのだろうが、それ以前の世代にとっては大迷惑でしかない。
364 :デフォルトの名無しさん :2019/07/23(火) 23:17:26.54 ID:2rFxEmo/.net ところがさとりはゆとりに対応する何かを持っているようだ。これはちょっと確認する必要があるな、という感じ。 今俺がグダグダこのメタ案件を書いているのもそのため。 ゆとりは>>355 みたいな糞投稿をしなければよかった、なんて反省は絶対せずに、 ひたすら「お前(俺のこと)が悪い!」と人格攻撃の連呼だ。俺はそれがゆとりの本当に駄目なところだと思っている。 そして俺は既に書いたがゆとりは殲滅対象だから、当然こういう機会が与えられたら「ゆとり死ね」とし、 「ゆとりが何故死ななければならないか」をきちんと説明するわけだ。今やっているように。 そうやって、少しでもネット全体がゆとり撲滅に動く助けになれば、と思っている。 これがコミュニティ(つまりネット全体)に対する俺流の貢献だ。 それに対してゆとりがゆとりに敵対する人(つまり俺)を攻撃して「ゆとり的居心地が良いコミュニティ」を維持するのは構わない。 ただそれなら俺達、或いは俺が所属しているコミュニティにちょっかい出さないでくれ。 ゆとりはゆとりだけの、俺達旧世代は俺達旧世代だけでそれぞれコミュニティを維持すればいい。 そしてどちらのコミュニティが生産的かで競えばいいだけだ。 本来ゆとりはネット接続率100%でそれなりの人数がいるのだから、 ゆとりだけの(ゆとりにとっては)居心地のよいSNSが出来ても何ら不思議でないし、 逆に、ない方が不自然なわけだが、ない。 これは、ゆとりがお子ちゃま過ぎてコミュニティの維持も出来ないし発展もしないからだ。 俺は最初から「ゆとり的価値観ではない」と明確に分かるように書いてるつもりだが、 それが読みとれなかったというのなら、それは俺の落ち度でもあるから、もっと分かりやすく書く。 本件については俺は今後必ず「ゆとり死ね」と入れるから、これでゆとり馬鹿にも分かるか? ゆとり死ね
365 :デフォルトの名無しさん :2019/07/24(水) 04:04:40.59 ID:k7RQM5em.net 前立ってた質問スレに常駐してヘイト撒き散らしてた荒らしかな
366 :デフォルトの名無しさん :2019/07/24(水) 22:42:37.95 ID:MCkLbdZJ.net >>365 そうやって嫌いな他人を全部脳内から排除してるのがゆとりの特徴だ。 だからゆとりはクズのままなんだよ。 ちょっと考えれば分かると思うのだが、 仮にMDNに、或いはJavaScriptの新規機能を標準化委員会に「リアル」で提案するとき、 そこで真面目に提案内容を議論/審議している状況で>>355 が許されると思っているのか? 俺の投稿はお前にとって課長か係長か、或いは同僚か部下だが、いずれにしてもあり得ないだろ。 ゆとりは「ネット」では何をやってもいいと思いこんでいる。だから何も生産出来ない。 ゆとり以前の世代はリアルの延長でネットを使っている。 だから匿名でも単に匿名なだけでリアルレベルの議論は出来るし、また、それを目指している。 相手を見ておもねり、或いは自分が匿名なのを利用して場を破壊しまくるゆとりのようなクズではない。 そしてさとりはこれらの馬鹿騒ぎを見て、何か思うところがあるのだろう、確かに達観してる。 ゆとり死ね といってもこれはおそらく「三つ子百まで」だからゆとりは今後ともネット上ではクズだ。 これは俺はネットデビューの状況に依るものだと推定している。 ゆとり以前: SNSが未発達/アングラで、ネットデビュー時の接続相手はリアルの知り合いが殆ど。 ゆとり: 2chやニコ等が一般的となってきて、ネットデビュー時の会話相手は会ったこともない人が殆ど、そしてほぼ匿名。 さとり: LineやFaceBook等リアル系SNSが一般化してきて、ネットデビュー時の接続相手はリアル友人が大半だが、 逆に既読疲れ等が発生し、これらを避けるように匿名SNSに流れてきている。 そして俺らゆとり以前の世代は「昔のネットはー」という幻影に囚われてそこを目指すわけだが、 これはゆとりがいる限り無理だ。作り上げるより壊す方が断然簡単だから。 実際、俺らがこっちで質問スレを復活させ、俺らが回答することにより質を上げたら、 ゆとりがWeb板から全員移住してきて潰したのは事実だ。 それで俺を荒らし扱いなのだから、お前らゆとりは全く腐ってる。 ゆとりに反対する限り荒らし、という極めて単細胞なゆとり独裁主義でしかない。 ゆとりがイナゴ行為を全く悪びれずに行う状況では、ゆとりが存在する限りゆとり標準以上の質を保つことは出来ない。
367 :デフォルトの名無しさん :2019/07/24(水) 22:43:53.77 ID:MCkLbdZJ.net ところがさとりはむしろ俺ら旧世代よりももっと監視が厳しい状態でネットをやってる。 だからゆとりみたいに完全にたがが外れきって振り切っている感じが微塵もない。 そして死ね死ね言い慣れた俺に対しても疑念を持つわけだ。 そんなこと言っちゃいけません、と「正しく」教育されてるから。まあこれは悪いことではないが。 結果的に、俺はゆとりとは組めないが、さとりとは組める。俺からするとさとりは常識の範囲だからだ。 逆に、さとりにとっては俺も十分にゴミかも知れないが、それはさとりが決めることだ。 一応俺は正論を吐いているつもりだし、馬鹿な発言がなければ俺が叩くこともない。 勿論そうでなければ俺を叩くのも自由だし、好きにすればいい。 俺はこの状況を危機的だと見て、ゆとりを排除できる掲示板を準備中だ。 実際にはゆとりを排除ではなく、隔離に近いが。 システムとしては、今で言うと8chかredditが近い。 問題があればmoderatorが勝手に判断してBANを行う。 そしてそのmoderatorはコテハン(に近い物)ではあるが匿名だ。 勿論ゆとりである可能性もあり、その場合は多分俺がBANされるわけだが、それも自由だ。 そういう掲示板を準備している。 といってもあと数年かかりそうだが、さとりが社会人デビューし始める頃には出来ればいいなと思っている。 ゆとり死ね
368 :デフォルトの名無しさん :2019/07/24(水) 22:44:34.68 ID:MCkLbdZJ.net 実際、有効な議論の為に誰をBANすべきか、というのは極めて難しくて、 ここで俺がどれだけ説明したところでそのレベルに達してない奴には理解も納得も出来ないと思う。 だから俺は、それに対しての解、「結果的に有効な議論が出来たBANを行った者が良いmoderator」を導入する。 単純には、俺をBANした場合は俺はもうその板に書けなくなる。 結果、俺の有効レスも駄レスも含めて全部失う。 そしてそれが正しかったかどうかはユーザー、つまり参加者が判定する、というものだ。 そのBANによりその板の質が上がれば、その板は賑わうし、逆なら過疎る。 結果、上手いmoderatorがいれば、 コミュニティが健全であれば結果的に全く意味のない発言をする連中=ゆとりが排除される、というわけだ。 そしてユーザーが他板の同種スレに移動するコストをほぼゼロにしておけば、 BANを濫用して板の質を落とすmoderatorは板ごと過疎化して殺せる。 これでmoderatorとユーザーの相互BANを達成する。(この仕組みが8chやredditにはない) 結果的には昔の(今もかも?)ニコのコメのフィルターレベルみたいなことをやろうとしている。 そして逆に俺自身が隔離される可能性もあるわけだが、 その場合は、俺が間違っていたという事実を突きつけられただけであり、それもありだ。 興味がある人はちょっと心に留めておいてくれ。 もっとも、起動するときにここで告知するかどうかはまた別問題なのだが。 ゆとり死ね 一応具体的に言っておくと、俺なら>>355 を議事妨害行為としてBANする。 ただしここでやっているような説明はなし、いきなりBANして終わりだ。 BAN基準はリアル議論基準準拠だ。 説明は常に時間の無駄だからやらない。 分かる奴は説明無しでも分かるし、分からない奴にいくら説明しても理解されることはないからだ。 ナイスBANと思う奴は俺の板に書けばいいし、 BANに疑問を持つなら俺の板に書かなければいいし、或いは各自の板では俺をBANできる。 そういう掲示板だ。 なお海外には似たようなものなら実は既に沢山あって、既に言ったとおり、有名どころは8chやredditになる。 日本は5chとふたばしかなくて、また、「それしかない」と思いこんでいること自体がかなり大問題だ。
369 :デフォルトの名無しさん :2019/07/24(水) 22:45:21.98 ID:MCkLbdZJ.net 根本的な問題は、俺達とさとりは「匿名掲示板って酷いな(リア友とのネット関係と比べて)」なのだが、 ゆとりは「ネットは好き放題出来るもの。匿名で当たり前だし、これが普通」と思いこんでいるところ。 ただ俺にはこれを転換させるだけの方策はない。だからゆとりをBANするしかない、と思っている。 それで、ゆとり流幼稚園と、非ゆとり方式で、どっちが生産的か勝負だ、というわけ。 ゆとり死ね 前にも同じようなことを言って「プログラム板」と「Web制作板」でやろうとしたが、 前述の通り、ここ5chでやってもゆとりはましな方に常に寄生するので、(自らでは全く改善する気がない) ましになったと思ったら結局ゆとりが大量に押し寄せてきて駄目になる、の繰り返しだった。 だからもう、ゆとりが押し寄せて来れない構造の所を作るしかない、という判断だ。 そしてインターネット上ではそれはBANしかない。 賛同する奴は噂が流れてくるのでも待っていてくれ。 ゆとり以前の世代は大歓迎だ。そしてさとりも多分歓迎出来る。 俺より上手いmoderationが出来る奴がいれば、結果的に俺はそいつに従うことになる。 もしかするとさとりにはこのレベルの奴が居るのかも?というのが今の俺の見立てだ。
370 :デフォルトの名無しさん :2019/08/02(金) 23:26:55.95 ID:bZta0FU5.net javascriptにいつのまにかclassなんてできたのか
371 :デフォルトの名無しさん :2019/08/05(月) 00:01:27.38 ID:c0j9QYKj.net javascriptでクラスを使いたいんですが 例えば var A = function(name){this.name = name;} A.prototype.hello = function(){setTimeout(function(){console.log("Hello, my name is "+this.name);},1000);} var a = new A("aaa"); a.hello();// ここでthisがaを指していない この場合helloの中のsetTimeoutの中のthisがaを指すようにするためにはどう修正すべきですかね?
372 :デフォルトの名無しさん :2019/08/05(月) 01:52:07.73 ID:vYVEyXMY.net setTimeoutに渡すcallbackをアロー関数にしてthisが変化しないようにする
373 :デフォルトの名無しさん :2019/08/05(月) 02:02:06.77 ID:c0j9QYKj.net ありがとうございます アロー関数を知らなかったのですがちらっと調べた感じできそうなのでやってみます
374 :デフォルトの名無しさん :2019/08/05(月) 02:09:27.83 ID:c0j9QYKj.net メモ 【JavaScript】アロー関数式を学ぶついでにthisも復習する話 https://qiita.com/mejileben/items/69e5facdb60781927929
375 :デフォルトの名無しさん :2019/08/05(月) 02:29:15.00 ID:YDvnBLwi.net アロー関数問題ない環境を対象にするならクラスもclass構文使ってもいい気もする
376 :デフォルトの名無しさん :2019/08/10(土) 15:33:12.58 ID:paQxkeGI.net わいはjs4年の実の娘と一緒にお風呂に入って対面座位で抱きしめ合ってベロちゅう唾飲みせっくすしてる。つるぺたとつるまんが気持ち良すぎて抜かずで連続3回中出しした。 禁断を犯した事実が興奮をさらに煽りもう近親相姦は当分やめられない。妻にはもちろん内緒。娘がいて本当に良かった。
377 :デフォルトの名無しさん :2019/08/28(水) 09:25:40.31 ID:cdWL3Y3E.net codesandboxが凄い手軽で便利なんだけどクソ重い これってうちのPenMノートの力不足?サーバ側の問題?
378 :デフォルトの名無しさん :2019/09/15(日) 10:09:58.86 ID:fvY2p9UT.net >>376 くわしく
379 :デフォルトの名無しさん :2020/02/20(木) 14:26:45 ID:Bj1a9Of3.net ブラゲーの自動化をjavascriptでやってみようかなって思ってるんですが 対象のブラゲーはUnityでWebGLを使ってるらしくcanvasオブジェクトの指定した位置をクリックできればできそうなんですが 指定した位置をクリック、はjavascriptでどう書くべきですかね?そもそも書けるんですかね?
380 :デフォルトの名無しさん :2020/02/20(木) 15:21:20 ID:Bj1a9Of3.net https://stackoverflow.com/questions/18365187/simulate-a-mouse-down-and-up-on-a-canvas-html5-page これかなあ
381 :デフォルトの名無しさん :2020/06/14(日) 19:57:42.72 ID:irom8koH.net 正直、JavaScriptはC++使いから見たら死んでる。 ブーストにBIGINTもBIGFLOATもあるから数値計算で秀でる部分が無い。 STLあるから、データ構造で困ることもない。 JsonIOさえあれば、アッパーコンパチなのがC++。 isn't it?
382 :デフォルトの名無しさん :2020/06/15(月) 04:57:32.55 ID:9yVLzu3w.net 単にお前のユースケースにマッチしてないってだけじゃね その思想だとC++(あと数値計算的にFortranか?)以外の全ての言語が死んでそう
383 :デフォルトの名無しさん :2020/07/10(金) 04:56:48.51 ID:uN8mjtUC.net Raspberry Pi4でVSCodeもどきが使える Raspberry Pi 4でVSCodeの100%オープンソース版のVSCodiumを使う https://pastebin.com/BV4Liiqv
384 :デフォルトの名無しさん :2020/07/20(月) 09:32:03 ID:DCmbCo2x.net >>381 おじいちゃん、C++のスレに行くといいよ
385 :デフォルトの名無しさん :2020/07/27(月) 17:33:48.62 ID:2I3xUck9.net 誰か珍しいコード書いてくれや!!
386 :デフォルトの名無しさん :2020/09/28(月) 11:47:18.37 ID:Q3jMIkVD.net https://lpeg.info/html/javascript_css_calendar.html > 「let」は連続で使う事ができないので、jsコード内に「let」が並んでいる場合は全て「var」に変更しましょう。 自分のスクリプトを動作させるために、他のスクリプトのletをvarに変更しろという。
387 :デフォルトの名無しさん :2021/10/12(火) 20:51:18.90 ID:BSPiPdYi.net C/Javaから入ってC++、C#、Pythonなんか今まで触ってきて初めてJavascriptの勉強始めたんだけど難しすぎない…? 前評判聞いてもっとちゃちいとか初心者向けとかそういう想像してたんだけど全然違った これまで経験してきた言語とそもそも考え方とか概念が違いすぎて理解できないことが多すぎる
388 :デフォルトの名無しさん :2021/10/12(火) 20:57:40.52 ID:NdoU3Kdh.net やりたいことだけピンポイントで勉強したらいいよ 今となっては出来ることや構文やAPIが増えすぎてすっかり複雑になっている
389 :デフォルトの名無しさん :2021/10/13(水) 21:05:02.48 ID:Nhowqva4.net デフォルトで色々非同期(特にコールバック設計のAPI)だとかイベント駆動になってるってことじゃないの? それはもう慣れでしかないが 少なくともC++より難しいなんてことはあり得ない 単にAPIのデザインに慣れてないだけ
390 :デフォルトの名無しさん :2022/04/09(土) 06:23:08.29 ID:oBfpHDmC.net >>387 どこら辺が難しいと感じますか?
391 :デフォルトの名無しさん :2022/04/15(金) 12:40:29.47 ID:cVoviCi/.net PromiseとPromiseじゃない値を受け取る関数を定義したいのだけどどうやって判定すんの? async function get(x) { if ( isPromise(x) ) return await x; else return x; } isPromiseの完全な実装方法を知りたい ググるとオブジェクトがthenを持ってたらPromiseだぜ!なんてジョークみたいなコメントが出てきて困った
392 :デフォルトの名無しさん :2022/04/15(金) 13:46:21.12 ID:M6f3Xn09.net >>391 Promiseじゃないのもawaitしてもいいのよ
393 :デフォルトの名無しさん :2022/10/26(水) 15:47:08.56 ID:pOryiMar.net 初心者ですがGoogleのGrasshopperというアプリで勉強を始めました どうでしょうか? Google製のJavaScript教育ツール「Grasshopper」は基礎から学べて初心者に優しい! - どれ使う?プログラミング教育ツール - 窓の杜 https://forest.watch.impress.co.jp/docs/serial/progedu/1404361.html
394 :デフォルトの名無しさん :2022/10/28(金) 12:57:59.55 ID:o0iPkyPv.net プログラミングはわからないことを検索して調べるってのが基本になるから 入門書とか入門サイト見つつわからない部分は個別に検索して調べるとかでどんどん知識広げていく そういうアプリを使ってもいいけどそれ1つだけで習得できるとは考えないほうが良いかな
395 :デフォルトの名無しさん :2022/10/28(金) 13:03:17.92 ID:PS6Qpvzx.net ありがとうございます 別の入門書を読んでるんだけど、理解は出来るんだけどすぐに忘れますね 経験を積んで覚えていくしかありませんね
396 :デフォルトの名無しさん :2022/10/30(日) 17:11:51.18 ID:JLZH2QlV.net JavaScript作成って家で副業になりますか?
397 :デフォルトの名無しさん :2023/09/21(木) 19:57:37.80 ID:LpJv58qv.net アノン、なんか鳴っとるぞー
398 :デフォルトの名無しさん :2023/10/08(日) 03:47:17.38 ID:nfkwaEZK.net まずChatGPTで実現したいお題のコードを大まかに書いてもらって、それの間違ってる箇所を指摘していくと、最終的に正常に動作するコードが書けるな AIってこういう風に使うんだということが理解できた
399 :デフォルトの名無しさん :2024/04/26(金) 14:50:56.87 ID:VL9cF/p4.net 以下の様な図形の各矩形部の座標を取得したいときはどのようにしたら良いですか? 各矩形に対して別の矩形を整列させたいと思っています。 https://imgur.com/a/JtI3mj7
400 :395 :2024/04/26(金) 15:34:08.53 ID:VL9cF/p4.net 自己レスです。ちょっと考えてみました。 以下の方法でできそうな気がするのでとりあえず試してみます。 もっと効率良い求め方などあれば教えてください。 1.全ての横線と縦線の座標を取得 2.上から横線を順に二本ずつチェック 3.二本の左上から右下に斜線を仮定し、他線との交差点を求める 4.交差点があればその横座標を利用して矩形を取得していく
401 :デフォルトの名無しさん :2024/04/26(金) 20:06:42.08 ID:OCrAocft.net >>400 https://developer.mozilla.org/ja/docs/Web/API/HTMLElement/offsetTop https://developer.mozilla.org/ja/docs/Web/API/HTMLElement/offsetLeft https://developer.mozilla.org/ja/docs/Web/API/HTMLElement/offsetWidth https://developer.mozilla.org/ja/docs/Web/API/HTMLElement/offsetHeight ただそれ以前に根本的に勘違いしてると思うが。 フローレイアウトなら以下だが、君が読んでも前提知識無さ過ぎて分からないと思う。 https://developer.mozilla.org/ja/docs/Web/CSS/CSS_Flow_Layout 言語間違えてるのなら適切な他スレに行くべき。
402 :395 :2024/04/30(火) 08:44:45.51 ID:yyiGviKR.net すみません。HTMLは関係のない話です。 とりあえず上の自己レスのやり方で実現はできています。
152 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200
本文 スレッドタイトル 投稿者