- 1 名前:Name_Not_Found mailto:sage [2016/05/16(月) 19:45:57.23 ID:???.net]
- JavaScript を自ら学ぶ人のための質問スレッドです。
>>2-4のテンプレを読んだ上で質問してください。次スレは>>950が>>2のテンプレ案(本スレで改善案があれば考慮)を元に立ててください ■質問を書く上で (1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。 (2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。 (ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など) (3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。 (4) 常に自発的に調べる心構えを持ってください。 具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。 わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。 (5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。 (6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。 ※必ず「問題の事象が再現されること」を確認してください。 必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。 (7) サンプルコードに HTML が含まれる場合は validator.w3.org/ で [Check] してみてください。 (8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2の質問テンプレートを活用してみてください。 (9) ライブラリ関連の話題は禁止です。関連スレにあるライブラリ質問スレで質問して下さい。 (10) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。
- 2 名前:Name_Not_Found mailto:sage [2016/05/16(月) 19:46:37.91 ID:???.net]
- ■質問テンプレート
【環境】OS, ブラウザをバージョンと共に記入してください。(ex: IE8, Firefox4) 【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。 【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。(Windows なら「コピット」を活用) 【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。 【サンプルコード】現象を再現可能な最小限のコードを書いてください。 1レスに収まらないならコード投稿サイトを利用してください。 jsdo.it/ jsbin.com/ jsfiddle.net/ ideone.com/ ■前スレ + JavaScript の質問用スレッド vol.129 + echo.2ch.net/test/read.cgi/hp/1456250334/ ■過去スレ全集 www2.atpages.jp/mirror/2ch/javascript/ usamimi.info/~mirrorhenkan/2ch/javascript/ (閲覧のみ) ■テンプレ案 fiddle.jshell.net/fH4cC/174/show/ ■関連スレ CSS・sass・less・stylus 初心者スレッド=15th= peace.2ch.net/test/read.cgi/hp/1453131115/ Canvasについて語ろう peace.2ch.net/test/read.cgi/hp/1305093769/
- 3 名前:Name_Not_Found mailto:sage [2016/05/16(月) 19:47:21.40 ID:???.net]
- ■FAQ
fiddle.jshell.net/vSqKr/44/show/light/ ◆開発者ツール(Developer Tools)の基本的な使い方 (全部はfiddle.jshell.net/vSqKr/44/show/light/#Browser-Developer-Tools ) ▼諸注意 - 本説明では Google Chrome の開発者ツールの名称に従います。他ブラウザで使う場合は適宜読み替えて下さい。 - IE9- でコンソールを使うには予め開発者ツールを起動しておく必要があります(開発者ツールを起動しないと console.log() が機能しません) - Safari はデフォルトで開発者ツールが無効な為、有効に設定する必要があります。 https://developer.apple.com/library/safari/documentation/AppleApplications/Conceptual/Safari_Developer_Guide/GettingStarted/GettingStarted.html ▼要素を検証 1. ページ上で右クリックして [要素を検証] 2. [Elements] パネルが開き、対象のDOMノードが選択される(選択対象が目的の要素でなければ [Elements] パネル上で選択し直す) 3. 右側のサイドバーから知りたいステータス名のタブを選択する - [Styles] タブ … CSSプロパティの指定値を表示 (※カスケードによって上書きされたプロパティは取り消し線で表示される) - [Computed] タブ … CSSプロパティの算出値を表示("font-size: 1em" を指定していても算出後の "*px" で表示される) - [Properties] タブ … 選択したDOMノードのプロパティを表示 ▼コンソール 1. JavaScript コード上で console.log('Hello, World!'); と入力 2. [Ctrl] + [Shift] + [I] キー(IE は [F12])で開発者ツールを開き、[Console] パネルを開く 3. [Console] パネルに "Hello, World!" と表示される (※window.alert() は String 型に変換されますが、console.log() は Object 型の中身をそのまま表示してくれます。)
- 4 名前:Name_Not_Found mailto:sage [2016/05/16(月) 19:48:08.86 ID:???.net]
- ■FAQ(続き)
◆JavaScriptの実行速度 JavaScriptの速度は「ブラウザ名」「ブラウザのバージョン」「PCスペック」に依存します(ブラウザのバージョン毎に最適化具合が異なります)。 速度の疑問解消の為に jsperf.com/ にコードをUPしてブラウザ毎に速度計測する事を推奨します。 例外として、仕様における理論上の速度が明確になっている場合があります。 例えば、正規表現によるマッチング処理を考えた場合、「RegExp#test > RegExp#exec > String#match」は ES5 仕様で保証されています。 ES5 仕様において RegExp#test が最も処理数が少なく、String#match が最も処理数が多いことが明確だからです。 ブラウザによっては RegExp#test の最適化が十分でなく、String#match の最適化が RegExp#test より十分であれば逆転する可能性はありますが、各メソッドの最適化が一律であればこの前提が崩れる事はありません。 ■各種仕様 ( fiddle.jshell.net/vSqKr/44/show/light/#Link も参照 ) ◆ Standard ECMA-262 bclary.com/2004/11/07/ (ECMAScript 3 HTML版) www2u.biglobe.ne.jp/~oz-07ams/2002/ecma262r3/ (ECMAScript 3 和訳) www.ecma-international.org/ecma-262/5.1/ (ECMAScript 5.1 HTML版) tsofthome.appspot.com/ecmascript.html (ECMAScript 5.1 和訳) www.ecma-international.org/ecma-262/6.0/ (ECMAScript 6 / ECMAScript 2015) kangax.github.io/compat-table/es5/ (ECMAScript 5 compatibility table) kangax.github.io/compat-table/es6/ (ECMAScript 6 compatibility table) https://tc39.github.io/ecma262/ (ECMAScript 7 / ECMAScript 2016) ◆ HTML Standard (HTML5) www.whatwg.org/specs/web-apps/current-work/multipage/ momdo.s35.xrea.com/web-html-test/spec/WD-html51-20130528/Overview.html (HTML5.1 部分訳) www.hcn.zaq.ne.jp/___/WEB/WebStorage-ja.html (Web Storage 和訳)
- 5 名前:Name_Not_Found mailto:sage [2016/05/16(月) 19:48:54.81 ID:???.net]
- ■諸注意
vol.115でlodashを不必要に推奨して啓蒙する行為が多く確認されており、ライブラリ系の話題はvol.116から禁止されました。 vol.115,116ではライブラリ禁止する発言が見られた直後にライブラリを許可する意図で次スレを立てる行為が確認されています。 本スレッドでライブラリ許可を求める発言が確認された場合は不要な争いを避ける為、スルーすることを推奨します。 ライブラリの話題はライブラリスレへ誘導し、誘導行為への反論はスルーしてください。
- 6 名前:Name_Not_Found mailto:sage [2016/05/16(月) 22:37:01.02 ID:???.net]
- 前スレでも出ていたけど、もうプログラム板でいいんじゃない?
+ JavaScript の質問用スレッド vol.119 + [無断転載禁止]©2ch.net echo.2ch.net/test/read.cgi/tech/1457452716/
- 7 名前:Name_Not_Found mailto:sage [2016/05/16(月) 22:43:54.04 ID:???.net]
- echo.2ch.net/test/read.cgi/hp/1456250334/994 より
> どれも使うとこでは使ってるが 今回使わなかった理由になってないが > JSで他のといっしょに変えるときに便利な場所で変えてる そういうのはCSSで定義しておいてid,class,属性で入れ替えるのがベター 振る舞い(JS)の中でデザイン(CSS)を埋め込む設計は好ましくない > localStorage関連は使えないと普通にエラー出るが? getItemの仕様を読む限りでは例外を発生させる記述が見つからないが、どんな条件で例外が発生する? https://triple-underscore.github.io/WebStorage-ja.html#dom-storage-getitem
- 8 名前:Name_Not_Found mailto:sage [2016/05/16(月) 22:54:55.32 ID:???.net]
- >>7
echo.2ch.net/test/read.cgi/tech/1457452716/844 のコピペだな
- 9 名前:Name_Not_Found mailto:sage [2016/05/16(月) 23:18:30.09 ID:???.net]
- テンプレはまともだしぼちぼち誘導しながら使えばいいんじゃない
- 10 名前:Name_Not_Found mailto:sage [2016/05/16(月) 23:22:25.97 ID:???.net]
- CSSで全部指定?きたねーコードだな
- 11 名前:Name_Not_Found mailto:sage [2016/05/16(月) 23:31:04.14 ID:???.net]
- style属性全開のマークアップはさすがにちょっと...
- 12 名前:Name_Not_Found mailto:sage [2016/05/16(月) 23:48:08.10 ID:???.net]
- 誘導する事に依存はないな
- 13 名前:じゃがりきん [2016/05/17(火) 00:16:00.15 ID:mHptFI5k.net]
- おひさしぶりです!じゃがです
新作できました〜 組市松紋デュエルカード runstant.com/jagarikin/projects/1e47037a
- 14 名前:Name_Not_Found mailto:sage [2016/05/17(火) 08:53:29.94 ID:???.net]
- localStorageは失敗したAPIの一つだから、
そんなに心配なら代わりにlocalForageを使う方が良い。 https://github.com/mozilla/localForage
- 15 名前:Name_Not_Found mailto:sage [2016/05/17(火) 11:03:42.97 ID:???.net]
- >>14
ソース読んだけど変更時のイベントすら投げてくれない事実上ゴミじゃん ライブラリ名と表面上の華やかで悦に得るタイプ?
- 16 名前:Name_Not_Found mailto:sage [2016/05/17(火) 11:10:39.96 ID:???.net]
- >>14
localStorageの機能面での問題提起じゃないから 解決案は echo.2ch.net/test/read.cgi/tech/1457452716/847 で出てる localStorageのPolyfillを使うのもありだと思うけどね
- 17 名前:Name_Not_Found mailto:sage [2016/05/17(火) 13:19:05.74 ID:???.net]
- jsdo.it で公開している、じゃがりきんのスーパー鳥スロットも、
localStorage で保存している >>13 漏れはかなり、ソースコードを分析したけど、 実行時に使われていない関数は、コメントアウトした方が良い また、全体を無名関数で囲えば、グローバル名前空間を汚染しない (function(){ })(); 今はローカルPC内で、毎日楽しんでいる。 ボーナスゲームで10万枚以上、出たこともある
- 18 名前:Name_Not_Found mailto:sage [2016/05/17(火) 14:52:13.01 ID:???.net]
- >>15
お前がそういうのならそうなんだろう お前の中ではね。
- 19 名前:Name_Not_Found mailto:sage [2016/05/17(火) 16:32:05.91 ID:???.net]
- ポリフィルねぇ……
localStorageも使えないようなブラウザは無視すべきだと思うけどね。 お節介かけるんなら記録しない。それくらいだろう。 そんなクズブラウザ使ってるクズのために皆が必要もないポリフィルをわざわざ読み込まんといけんのは絶対におかしい。 最悪でも必要か確認してから遅延ロードするようにしてくれ。
- 20 名前:Name_Not_Found mailto:sage [2016/05/17(火) 19:20:46.54 ID:???.net]
- TagName使うなって指摘あったけど
ほぼひとつしか使われないcanvasタグで? 名前気にするわりにid無駄に増やすのもなんだかな
- 21 名前:Name_Not_Found mailto:sage [2016/05/17(火) 19:38:43.70 ID:???.net]
- 指摘っていうのはあくまでその人が生きてきた経験と
その人が想像する想定上でのことだからね 自分が相手とズレた生き方をしてるんなら聞く必要はないさ
- 22 名前:Name_Not_Found mailto:sage [2016/05/17(火) 20:28:58.73 ID:???.net]
- >>19
その辺は将来的にcanvas要素が増えたときにも動くようにするか否かで変わるだろうね idをつけるのは万が一にもcanvas要素を増やす場合に備えての事だろうから
- 23 名前:Name_Not_Found mailto:sage [2016/05/17(火) 21:16:38.00 ID:???.net]
- 将来的にcanvas要素が増えるかどうか不明ってことではないし、
不明だから付けてるってわけでもないからその論はおかしい。 一番は、気分の問題でしょ。それだけ。
- 24 名前:Name_Not_Found mailto:sage [2016/05/17(火) 21:40:16.19 ID:???.net]
- 気分の問題じゃなくてcanvas要素に論理的な意味を持たせるか否かの違い
- jsdo.it/jagarikin/EjpL/fullscreen で <canvas id="slot-game"></canvas> - runstant.com/jagarikin/projects/1e47037a で <canvas id="duel-card-game"></canvas> idを付与すれば、それが「スロットゲーム」や「デュエルカードゲーム」である事を論理的に定義出来る それは同一文書内にcanvas要素が複数あっても論理的に区別できる事に他ならない
- 25 名前:Name_Not_Found mailto:sage [2016/05/17(火) 22:05:00.45 ID:???.net]
- 矮小な論理性は気分と等価だろうよ
- 26 名前:Name_Not_Found mailto:sage [2016/05/17(火) 22:15:52.64 ID:???.net]
- 気分でidの有無を決める人がいるんだな
それでいいならコインでidを付けるか決めたら?
- 27 名前:Name_Not_Found mailto:sage [2016/05/17(火) 23:12:03.72 ID:???.net]
- じゃがりきんのスーパー鳥スロットルでは、
canvas = document.getElementsByTagName('canvas')[0]; idなら、ハッシュに登録して、即取得できるけど、 TagNameなら、1つ見つけても、ファイルの最後まで探索するから、ムダが多い でも、このアプリは、画像を使わず数値計算のみで、鳥の化け物を描いているのはすごい。 様々な画像エフェクトも使っている もっと、コメントも書いてあればなあ
- 28 名前:Name_Not_Found mailto:sage [2016/05/18(水) 00:05:38.03 ID:???.net]
- >>26
自分の不安な気が収まるかが重要なのにそれはおかしいんじゃない? いや、きっと君は神頼みやゲン担ぎに依存するタイプなんだろな。
- 29 名前:Name_Not_Found mailto:sage [2016/05/18(水) 00:32:27.04 ID:???.net]
- >>192
そりゃそうだが、随分無茶な処理を要求するんだな Number 型全体が IEEE 754 の制約を受けるわけだが、制約外の数値を正しく検出するようにしろという事か 対処療法的には入力文字列を正しくパースして数値比較する 根本的には ECMAScript のビルトインオブジェクト全体を書き換える必要があるわけだが、そこまでやる必要あるのかね
- 30 名前:Name_Not_Found mailto:sage [2016/05/18(水) 00:36:32.84 ID:???.net]
- >>28
不安を解消するのが大した論理もないただの気分次第という論理がおかしいと感じないならもう何もいわん
- 31 名前:Name_Not_Found mailto:sage [2016/05/18(水) 01:06:07.80 ID:???.net]
- 論理がないなんて言ってないだろ
プログラマの気分にはそれなりの論理性はある そしてidを付けるどうたら今まで話されてきた”話”はその程度のレベルでしか無いということ 本当に厳密に質問者のコンテキストで必要かまで考えて言った言葉じゃない ただ単に自分の中での正義に沿うことを理屈もなく言っただけ
- 32 名前:Name_Not_Found mailto:sage [2016/05/18(水) 01:12:28.36 ID:???.net]
- >>31
お前の言葉で言うなら「矮小な論理性は気分と等価だろうよ」と返されるところだろうな 客観的に100%正しい事なんてそうそうないだろうに
- 33 名前:Name_Not_Found mailto:sage [2016/05/18(水) 01:14:51.41 ID:???.net]
- うんにゃ
何も分かってない 自己満足の宗教は辞めろと言いたいんだよ 科学で語れ データで語れ わかったか
- 34 名前:Name_Not_Found mailto:sage [2016/05/18(水) 06:54:17.73 ID:???.net]
- >>31の論もその程度の宗教だけどな
データや科学とやらがどこにあるのやら
- 35 名前:Name_Not_Found mailto:sage [2016/05/18(水) 07:41:50.25 ID:???.net]
- 自分はあくまで自分の意志として言っているので問題ない。
それが決まり事かのようには語っていない。
- 36 名前:Name_Not_Found mailto:sage [2016/05/18(水) 09:05:10.80 ID:???.net]
- だから自己満足なんだろ?
- 37 名前:Name_Not_Found mailto:sage [2016/05/18(水) 12:59:57.35 ID:???.net]
- 誰も決め事はいってない
自己満足に自己満足を押しつけているようにしか見えん
- 38 名前:Name_Not_Found mailto:sage [2016/05/18(水) 22:46:23.82 ID:???.net]
- >>35,36,37
自己満辞めろ
- 39 名前:Name_Not_Found mailto:sage [2016/05/19(木) 20:17:15.52 ID:???.net]
- >>38
おう自己満レスやめーや
|

|