JavaScript を自ら学ぶ人のための質問スレッドです。
次スレは>>950が(本スレで改善案があれば考慮して)立ててください
■規則/推奨ルール
・メール欄を空欄にし、名前にレス番を入れることを強く推奨(なりすまし防止)
・質問内容は具体的に。言葉だけでなく、出来る限り再現性を確認したサンプルコードの掲示。
・質問テンプレートの利用推奨。
・質問への「答え」だけでなく「意見」を出しても良い。
■禁止行為
・丸投げ質問
・迷惑スクリプトの質問
・オレオレ用語の使用(一般的な用語を使用する事)
・煽り、批判等の他人を不快にさせる行為(批判の代わりに「AよりBが良い」のような代案を出す事)
■質問テンプレート
【環境】OS, ブラウザをバージョンと共に記入してください。(ex: IE8, Firefox4)
【条件】期待する回答の条件を書いてください。(ex: jQuery不可, フレームワーク不可)
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。(Windows なら「コピット」を活用)
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
1レスに収まらないならコード投稿サイトを利用してください。
http://jsdo.it/ http://jsbin.com/ http://jsfiddle.net/ http://ideone.com/
■回答者へ
・回答には多様性があります。他人の回答を尊重してください
・動作ブラウザや環境が限られる場合は、それを明記してください
・他人の回答を批判する代わりに、自分ならこう書くという例を示してください
・質問者がJavaScriptでなければ実現できないと勘違いしてるなら、その否定としてHTMLとCSSで実装しても良い
・他人の回答を見たくないのであれば、文句をつける代わりにNGにして見えないようにしてください。文句をつける=荒らしです
探検
+ JavaScript の質問用スレッド vol.132 +
レス数が1000を超えています。これ以上書き込みはできません。
2018/03/06(火) 18:46:23.71ID:???
2018/03/06(火) 18:47:11.62ID:???
■FAQ
http://fiddle.jshell.net/vSqKr/44/show/light/
◆開発者ツール(Developer Tools)の基本的な使い方 (全部はhttp://fiddle.jshell.net/vSqKr/44/show/light/#Browser-Developer-Tools )
▼諸注意
- 本説明では Google Chrome の開発者ツールの名称に従います。他ブラウザで使う場合は適宜読み替えて下さい。
- Edge- でコンソールを使うには予め開発者ツールを起動しておく必要があります(開発者ツールを起動しないと 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 型の中身をそのまま表示してくれます。)
http://fiddle.jshell.net/vSqKr/44/show/light/
◆開発者ツール(Developer Tools)の基本的な使い方 (全部はhttp://fiddle.jshell.net/vSqKr/44/show/light/#Browser-Developer-Tools )
▼諸注意
- 本説明では Google Chrome の開発者ツールの名称に従います。他ブラウザで使う場合は適宜読み替えて下さい。
- Edge- でコンソールを使うには予め開発者ツールを起動しておく必要があります(開発者ツールを起動しないと 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 型の中身をそのまま表示してくれます。)
2018/03/06(火) 18:47:37.17ID:???
■FAQ(続き)
◆JavaScriptの実行速度
JavaScriptの速度は「ブラウザ名」「ブラウザのバージョン」「PCスペック」に依存します(ブラウザのバージョン毎に最適化具合が異なります)。
速度の疑問解消の為に http://jsperf.com/ にコードをUPしてブラウザ毎に速度計測する事を推奨します。
例外として、仕様における理論上の速度が明確になっている場合があります。
例えば、正規表現によるマッチング処理を考えた場合、「RegExp#test > RegExp#exec > String#match」は ES5 仕様で保証されています。
ES5 仕様において RegExp#test が最も処理数が少なく、String#match が最も処理数が多いことが明確だからです。
ブラウザによっては RegExp#test の最適化が十分でなく、String#match の最適化が RegExp#test より十分であれば逆転する可能性はありますが、各メソッドの最適化が一律であればこの前提が崩れる事はありません。
■各種仕様 ( http://fiddle.jshell.net/vSqKr/44/show/light/#Link も参照 )
◆ Standard ECMA-262
http://bclary.com/2004/11/07/ (ECMAScript 3 HTML版)
http://www2u.biglobe.ne.jp/~oz-07ams/2002/ecma262r3/ (ECMAScript 3 和訳)
http://www.ecma-international.org/ecma-262/5.1/ (ECMAScript 5.1 HTML版)
http://tsofthome.appspot.com/ecmascript.html (ECMAScript 5.1 和訳)
http://www.ecma-international.org/ecma-262/6.0/ (ECMAScript 6 / ECMAScript 2015)
http://kangax.github.io/compat-table/es5/ (ECMAScript 5 compatibility table)
http://kangax.github.io/compat-table/es6/ (ECMAScript 6 compatibility table)
◆ HTML Standard (HTML5)
http://www.whatwg.org/specs/web-apps/current-work/multipage/
http://momdo.s35.xrea.com/web-html-test/spec/WD-html51-20130528/Overview.html (HTML5.1 部分訳)
http://www.hcn.zaq.ne.jp/___/WEB/WebStorage-ja.html (Web Storage 和訳)
◆JavaScriptの実行速度
JavaScriptの速度は「ブラウザ名」「ブラウザのバージョン」「PCスペック」に依存します(ブラウザのバージョン毎に最適化具合が異なります)。
速度の疑問解消の為に http://jsperf.com/ にコードをUPしてブラウザ毎に速度計測する事を推奨します。
例外として、仕様における理論上の速度が明確になっている場合があります。
例えば、正規表現によるマッチング処理を考えた場合、「RegExp#test > RegExp#exec > String#match」は ES5 仕様で保証されています。
ES5 仕様において RegExp#test が最も処理数が少なく、String#match が最も処理数が多いことが明確だからです。
ブラウザによっては RegExp#test の最適化が十分でなく、String#match の最適化が RegExp#test より十分であれば逆転する可能性はありますが、各メソッドの最適化が一律であればこの前提が崩れる事はありません。
■各種仕様 ( http://fiddle.jshell.net/vSqKr/44/show/light/#Link も参照 )
◆ Standard ECMA-262
http://bclary.com/2004/11/07/ (ECMAScript 3 HTML版)
http://www2u.biglobe.ne.jp/~oz-07ams/2002/ecma262r3/ (ECMAScript 3 和訳)
http://www.ecma-international.org/ecma-262/5.1/ (ECMAScript 5.1 HTML版)
http://tsofthome.appspot.com/ecmascript.html (ECMAScript 5.1 和訳)
http://www.ecma-international.org/ecma-262/6.0/ (ECMAScript 6 / ECMAScript 2015)
http://kangax.github.io/compat-table/es5/ (ECMAScript 5 compatibility table)
http://kangax.github.io/compat-table/es6/ (ECMAScript 6 compatibility table)
◆ HTML Standard (HTML5)
http://www.whatwg.org/specs/web-apps/current-work/multipage/
http://momdo.s35.xrea.com/web-html-test/spec/WD-html51-20130528/Overview.html (HTML5.1 部分訳)
http://www.hcn.zaq.ne.jp/___/WEB/WebStorage-ja.html (Web Storage 和訳)
2018/03/06(火) 18:47:59.30ID:???
■各種仕様 (続き)
◆ Document Object Model (DOM) / CSS Object Model (CSSOM)
http://www.hcn.zaq.ne.jp/___/WEB/DOM4-ja.html (DOM Standard (DOM4) 和訳)
http://www.w3.org/TR/DOM-Level-3-Events/ (DOM3 Events)
http://www.w3.org/TR/uievents/ (UI Events)
http://www.hcn.zaq.ne.jp/___/WEB/cssom-ja.html (CSSOM 和訳)
http://www.hcn.zaq.ne.jp/___/WEB/cssom-view-ja.html (CSSOM View Module 和訳)
◆ その他のWeb関連仕様
http://domparsing.spec.whatwg.org/ (DOM Parsing and Serialization - innerHTML等)
http://www.hcn.zaq.ne.jp/___/WEB/XHR-ja.html (XMLHttpRequest 和訳)
http://www.hcn.zaq.ne.jp/___/WEB/File_API-ja.html (File API 和訳)
http://www.whatwg.org/specs/ (WHATWGの仕様一覧)
◆ MDN (Netscape/Mozilla)
https://developer.mozilla.org/ja/docs
◆ MSDN Library
https://msdn.microsoft.com/en-us/library/ie/hh828809 (Internet Explorer API)
http://msdn.microsoft.com/ja-jp/library/yek4tbz0.aspx (JavaScript)
http://msdn.microsoft.com/ja-jp/library/cc427807.aspx (JScript)
http://msdn.microsoft.com/ja-jp/library/cc409712.aspx (DHTML)
◆ JavaScript Garden (ja)
http://bonsaiden.github.com/JavaScript-Garden/ja/
◆ JSON (JavaScript Object Notation)
http://www.json.org/json-ja.html
◆ Document Object Model (DOM) / CSS Object Model (CSSOM)
http://www.hcn.zaq.ne.jp/___/WEB/DOM4-ja.html (DOM Standard (DOM4) 和訳)
http://www.w3.org/TR/DOM-Level-3-Events/ (DOM3 Events)
http://www.w3.org/TR/uievents/ (UI Events)
http://www.hcn.zaq.ne.jp/___/WEB/cssom-ja.html (CSSOM 和訳)
http://www.hcn.zaq.ne.jp/___/WEB/cssom-view-ja.html (CSSOM View Module 和訳)
◆ その他のWeb関連仕様
http://domparsing.spec.whatwg.org/ (DOM Parsing and Serialization - innerHTML等)
http://www.hcn.zaq.ne.jp/___/WEB/XHR-ja.html (XMLHttpRequest 和訳)
http://www.hcn.zaq.ne.jp/___/WEB/File_API-ja.html (File API 和訳)
http://www.whatwg.org/specs/ (WHATWGの仕様一覧)
◆ MDN (Netscape/Mozilla)
https://developer.mozilla.org/ja/docs
◆ MSDN Library
https://msdn.microsoft.com/en-us/library/ie/hh828809 (Internet Explorer API)
http://msdn.microsoft.com/ja-jp/library/yek4tbz0.aspx (JavaScript)
http://msdn.microsoft.com/ja-jp/library/cc427807.aspx (JScript)
http://msdn.microsoft.com/ja-jp/library/cc409712.aspx (DHTML)
◆ JavaScript Garden (ja)
http://bonsaiden.github.com/JavaScript-Garden/ja/
◆ JSON (JavaScript Object Notation)
http://www.json.org/json-ja.html
2018/03/06(火) 19:00:52.16ID:???
おつ
以後jQuery禁止
以後jQuery禁止
2018/03/06(火) 19:43:02.59ID:???
2018/03/06(火) 20:56:07.11ID:???
ただ単に禁止と書き連ねただけでは原理主義みたいで気持ちが悪い
もしくは喧嘩を売っているようにも見える
きちんとテンプレの体裁を成すくらいの文量で
これまでの経緯と、このスレではそう言った質問・回答を扱わない件、
そしてライブラリ用質問スレへのリンクくらいは無いとね
ただ単にどっかの誰かが一言禁止だ!と言ってるだけで
済んだ気になってるとそれはただ荒れる元になる
もしくは喧嘩を売っているようにも見える
きちんとテンプレの体裁を成すくらいの文量で
これまでの経緯と、このスレではそう言った質問・回答を扱わない件、
そしてライブラリ用質問スレへのリンクくらいは無いとね
ただ単にどっかの誰かが一言禁止だ!と言ってるだけで
済んだ気になってるとそれはただ荒れる元になる
2018/03/06(火) 21:01:30.74ID:???
ということでjQuery, lodash, underscore解禁
2018/03/06(火) 22:09:12.66ID:???
jQuery\(^o^)/
2018/03/06(火) 23:34:45.85ID:???
禁止だ!
2018/03/07(水) 03:27:34.37ID:???
改竄前に戻ってるのか戻ってないのかよくわからんテンプレだが
取りあえずいつもの荒らしの立てたスレではないのか
取りあえずいつもの荒らしの立てたスレではないのか
2018/03/07(水) 08:34:04.49ID:???
DOMの質問も禁止な
純粋なjavascriptのみのスレ
純粋なjavascriptのみのスレ
2018/03/07(水) 10:29:55.27ID:???
右クリックしても右クリックメニューがでないで広告サイトに飛ばされるサイトがあるんだけど
どうやったら解除して右クリックメニュー表示できますか?
どうやったら解除して右クリックメニュー表示できますか?
2018/03/07(水) 10:31:08.36ID:???
javascriptをoffにすればメニュー表示できる
2018/03/07(水) 14:07:29.71ID:???
jqueryで、選択された要素の中に指定した要素が含まれているかを調べるのは
どうやればいいのでしょうか?
findかと思っていたのですが、findは子孫要素まで検索対象に含められると分かりました
子孫要素まで調べたくはありません
どうやればいいのでしょうか?
findかと思っていたのですが、findは子孫要素まで検索対象に含められると分かりました
子孫要素まで調べたくはありません
2018/03/07(水) 14:24:45.76ID:???
.childrenを探せばいいじゃん
2018/03/07(水) 14:49:46.61ID:???
よくわからないんだけど
jqueryで、ってjqueryを使えるということは普通のjsも使えるわけで
・普通のjs回答でもいいしjquery回答でもいい
・可能な限り最大限jqueryを使うべき
・jqueryで使えるようになるもの以外は使ってはならない
jqueryを認めるとどれなのか曖昧になって面倒ではないか
jqueryで、ってjqueryを使えるということは普通のjsも使えるわけで
・普通のjs回答でもいいしjquery回答でもいい
・可能な限り最大限jqueryを使うべき
・jqueryで使えるようになるもの以外は使ってはならない
jqueryを認めるとどれなのか曖昧になって面倒ではないか
2018/03/07(水) 15:00:41.84ID:???
2018/03/07(水) 15:05:31.33ID:???
childrenって子要素を取得するメソッドですよね
そういう意味ではなくて、
たとえば
$('.hoge')
で選択された要素集合の中に、あるDOM要素が含まれているか調べたい、というような場合です
そういう意味ではなくて、
たとえば
$('.hoge')
で選択された要素集合の中に、あるDOM要素が含まれているか調べたい、というような場合です
2018/03/07(水) 15:29:36.35ID:???
意味不明です
jqueryでやる方法を聞くならjqueryスレがあるんですよ。
アスペですか?
jqueryでやる方法を聞くならjqueryスレがあるんですよ。
アスペですか?
2018/03/07(水) 15:30:53.22ID:???
2018/03/07(水) 16:45:18.98ID:???
2018/03/07(水) 16:48:32.48ID:???
children からの list で for すればいいとおもうけど
javascript構文は禁止なのかw
javascript構文は禁止なのかw
2018/03/07(水) 16:50:18.44ID:???
戦争じゃー
2018/03/07(水) 16:52:59.78ID:???
>1
hcn zaqなんてらってうrlのリンク全部きれてるじゃねぇか
hcn zaqなんてらってうrlのリンク全部きれてるじゃねぇか
2018/03/07(水) 16:57:44.27ID:???
>>23
ですからchildrenは関係ありません
それにisメソッド一つで済むのに何故わざわざループ処理を書くのですか?
そういう処理をわざわざ書きたくないからjQueryを使っているのに。
分かりますね?
ですからchildrenは関係ありません
それにisメソッド一つで済むのに何故わざわざループ処理を書くのですか?
そういう処理をわざわざ書きたくないからjQueryを使っているのに。
分かりますね?
2018/03/07(水) 17:12:32.63ID:???
2018/03/07(水) 17:14:13.20ID:???
提案
jQureryは荒れることが判明したので分離しよう。
jQureryは荒れることが判明したので分離しよう。
2018/03/07(水) 17:31:57.77ID:???
たかだか数行
減らすため
数千バイト
ロードする
これ七五調って言うんだっけ??
減らすため
数千バイト
ロードする
これ七五調って言うんだっけ??
2018/03/07(水) 18:35:46.88ID:???
指定した子要素が含まれているかどうかといっても
className === 'fuga'な子要素とか、.dataset.hoge === 1 な子要素とか、複数の組み合わせとか、
あと含まれているかどうかをどう使いたいか、とかいろいろあるからなあ
「選択された要素」が t で、含まれているときに特定の変数をtrueとしたい、だけなら
var result = function(){
for( var ch=t.children, i=ch.length-1; 0<=i; --i) if( 条件式 ) return true;
})();
が正解な気がするんだけど
className === 'fuga'な子要素とか、.dataset.hoge === 1 な子要素とか、複数の組み合わせとか、
あと含まれているかどうかをどう使いたいか、とかいろいろあるからなあ
「選択された要素」が t で、含まれているときに特定の変数をtrueとしたい、だけなら
var result = function(){
for( var ch=t.children, i=ch.length-1; 0<=i; --i) if( 条件式 ) return true;
})();
が正解な気がするんだけど
2018/03/07(水) 18:41:38.22ID:???
例えば、何かの本のようなレイアウトがしたいんです
という質問があった時、
ひょっとしたらjQueryやそのライブラリを使った霞程度のヒントを教えてくれるかもしれないのがjQueryスレ
そしてCSS HoudiniのLayout APIやPaint API勉強すれば自由にできるよ、というのがここ
まれに数百行のコードを貼っつける猛者が現れて荒れることがあるかもしれない
でも質問者にとって一番必要なのは、どっかの馬の骨達が作ったHoudiniフレームワークの海から
超特化超マイナーなライブラリを拾い上げて、それがきちんと使えるものであることを保証し
無に等しいドキュメントの代わりにコードを解析して使い方を手取り足取り解説してくれる存在
今のWebに不足しているところはそこ
最低でもHoudini系のパッケージマネージャが求められるが、
質問スレも、勉強の為のここと、有名ライブラリの為のあそこと、もう一つ居る
じゃないと質問者が無駄骨を折ってスレが荒れるだけになる
という質問があった時、
ひょっとしたらjQueryやそのライブラリを使った霞程度のヒントを教えてくれるかもしれないのがjQueryスレ
そしてCSS HoudiniのLayout APIやPaint API勉強すれば自由にできるよ、というのがここ
まれに数百行のコードを貼っつける猛者が現れて荒れることがあるかもしれない
でも質問者にとって一番必要なのは、どっかの馬の骨達が作ったHoudiniフレームワークの海から
超特化超マイナーなライブラリを拾い上げて、それがきちんと使えるものであることを保証し
無に等しいドキュメントの代わりにコードを解析して使い方を手取り足取り解説してくれる存在
今のWebに不足しているところはそこ
最低でもHoudini系のパッケージマネージャが求められるが、
質問スレも、勉強の為のここと、有名ライブラリの為のあそこと、もう一つ居る
じゃないと質問者が無駄骨を折ってスレが荒れるだけになる
2018/03/07(水) 18:43:33.51ID:???
$('div > p') 直下のみ
$('div p') 子孫も含める
jQueryで子要素を取得するいくつかの方法 children,find,contents
http://www.flatflag.nir87.com/children-996
$('div p') 子孫も含める
jQueryで子要素を取得するいくつかの方法 children,find,contents
http://www.flatflag.nir87.com/children-996
2018/03/07(水) 18:47:57.87ID:???
cssもしっかり勉強して意味と挙動を把握しておかないと微調整必要になったとき詰むからな
2018/03/07(水) 18:55:50.20ID:???
jQueryなんでこんなきらわれてるん?(´・ω・`)
2018/03/07(水) 19:30:06.90ID:???
jQuery,lodash, SASS, Ruby など、ライブラリは禁止とか、言ってる奴は、荒らし。
こいつは、色んな板を荒らしてる
無視しろ
こいつは、色んな板を荒らしてる
無視しろ
2018/03/07(水) 19:34:05.06ID:???
SASS, Rubyがライブラリとかさすがキチガイお里が知れるw
2018/03/07(水) 19:45:02.79ID:???
2018/03/07(水) 19:51:31.84ID:???
>>34
料理スレに電子レンジ調理の話しかしない集団がいたら荒れるのは避けられないだろう
料理スレに電子レンジ調理の話しかしない集団がいたら荒れるのは避けられないだろう
2018/03/07(水) 19:52:18.85ID:???
2018/03/07(水) 20:05:21.31ID:???
SASSだけにさすが
2018/03/07(水) 20:49:37.21ID:???
2018/03/07(水) 20:54:21.70ID:???
そんなところ行ったらみんな達人だからマウント取れない
2018/03/07(水) 21:09:02.62ID:???
2018/03/07(水) 21:28:46.71ID:???
こいつは、色んな板を荒らしてる奴だから、無視しろ
ソースコードを書いていない奴は、基本、荒らしだから、無視でOK
ソースコードを書いていない奴は、基本、荒らしだから、無視でOK
2018/03/07(水) 21:42:47.86ID:???
jqueryの質問するなら英語勉強してstackoverflowいけってバッチャが言ってた
2018/03/07(水) 22:34:24.17ID:???
2018/03/07(水) 23:14:55.13ID:???
>>15
> jqueryで、選択された要素の中に指定した要素が含まれているかを調べるのは
> どうやればいいのでしょうか?
> findかと思っていたのですが、findは子孫要素まで検索対象に含められると分かりました
> 子孫要素まで調べたくはありません
まあいくつか有るが、こういうHTMLの時
<div id="top">
<div class="stranger"></div>
<div class="child">
<div class="descendant"></div>
<div class="descendant"></div>
</div>
<div class="child">
<div class="descendant"></div>
<div class="descendant"></div>
</div>
<div class="stranger"></div>
</div>
こんな所かな(attrは参考として書いただけで実際には必要ない)
$('#top').has('> .child').attr('id') // => top
$('#top').find('> .child').attr('class') // => child
$('#top > .child').attr('class') // => child
$('#top').children('.child').length // => 2
$('#top').children().is('.child') // => true
> jqueryで、選択された要素の中に指定した要素が含まれているかを調べるのは
> どうやればいいのでしょうか?
> findかと思っていたのですが、findは子孫要素まで検索対象に含められると分かりました
> 子孫要素まで調べたくはありません
まあいくつか有るが、こういうHTMLの時
<div id="top">
<div class="stranger"></div>
<div class="child">
<div class="descendant"></div>
<div class="descendant"></div>
</div>
<div class="child">
<div class="descendant"></div>
<div class="descendant"></div>
</div>
<div class="stranger"></div>
</div>
こんな所かな(attrは参考として書いただけで実際には必要ない)
$('#top').has('> .child').attr('id') // => top
$('#top').find('> .child').attr('class') // => child
$('#top > .child').attr('class') // => child
$('#top').children('.child').length // => 2
$('#top').children().is('.child') // => true
2018/03/07(水) 23:35:22.19ID:???
jQueryの話やめてくれ
javascript勉強スレでライブラリの話するの気持ち悪い
ライブラリなんて自分で調べるのぜんていだろ
あまたあるライブラリの質問されても困るわ
javascript勉強スレでライブラリの話するの気持ち悪い
ライブラリなんて自分で調べるのぜんていだろ
あまたあるライブラリの質問されても困るわ
2018/03/07(水) 23:45:55.08ID:???
そういう面白おかしい反応するから
余計からかわれるなんてこともあるかも
余計からかわれるなんてこともあるかも
50Name_Not_Found
2018/03/07(水) 23:57:28.11ID:zYT4/KsP からかってるつもりなら
どうでもいいよ
jQuery厨はけっきょく嵐ってこと自白してるだけだしwww
どうでもいいよ
jQuery厨はけっきょく嵐ってこと自白してるだけだしwww
2018/03/08(木) 00:10:10.88ID:???
いいかたが悪かったかな
ストレートにいうと
構うから居つく
ということを言いたかった
ストレートにいうと
構うから居つく
ということを言いたかった
2018/03/08(木) 00:13:58.48ID:???
構わないでもキチは居着く
キチが居なくなるのは飽きるか完全に無人になるかどっちかだけ
キチが居なくなるのは飽きるか完全に無人になるかどっちかだけ
2018/03/08(木) 00:24:58.41ID:???
結局最終的には英語で海外の情報を取得できないとプロにはなれないか・・・
2018/03/08(木) 02:02:55.21ID:???
>>18
JSスレでそんなことよく言えるな
JSスレでそんなことよく言えるな
2018/03/08(木) 03:24:28.57ID:???
>>13-14
F12 開発者ツールを起動して、1行ずつデバッグ実行するとか。
ソースコードは変更できないのか?
preventDefault()・stopPropagation() などで、
クリックイベントのバブリング (伝播)を止めているのかな?
ブラウザの自動操作なら、Selenium WebDriver で、
登録されたイベントリスナーを削除するとか、
onClick() の内容を上書きするとか
F12 開発者ツールを起動して、1行ずつデバッグ実行するとか。
ソースコードは変更できないのか?
preventDefault()・stopPropagation() などで、
クリックイベントのバブリング (伝播)を止めているのかな?
ブラウザの自動操作なら、Selenium WebDriver で、
登録されたイベントリスナーを削除するとか、
onClick() の内容を上書きするとか
2018/03/08(木) 03:40:19.68ID:???
2018/03/08(木) 03:49:34.95ID:???
google spreadsheetってhtml css jsだけで作られてるのかな?
勉強としてスプレッドシートもどきをhtml css jsだけでつくってみたいけどなんかそういうサイトある?
勉強としてスプレッドシートもどきをhtml css jsだけでつくってみたいけどなんかそういうサイトある?
2018/03/08(木) 11:03:22.28ID:???
プログラミングを趣味でやるならjavascriptっていわれたんですが本当ですか?
プログラミングの知識はまったくないのですが
いまなんとなくjavascriptかpythonかphpでまよってます
プログラミングの知識はまったくないのですが
いまなんとなくjavascriptかpythonかphpでまよってます
2018/03/08(木) 11:56:18.22ID:???
趣味で何をやるのかによる
2018/03/08(木) 12:48:43.88ID:???
>>58
pythonにしとけ
pythonにしとけ
2018/03/08(木) 13:31:52.54ID:???
2018/03/08(木) 14:12:43.11ID:???
pyってそんないい?
2018/03/08(木) 14:42:46.85ID:???
言語としては嫌いだけどユーザーベースの大きいアカデミックでもインダストリーでも普通に使われる質のよいライブラリが豊富に揃ってるので道具としてはよい。
2018/03/08(木) 16:23:50.89ID:???
とりあえず手を出してみたいだけならjsでもpyでもphpでもなんでもいい
perlじゃなけりゃ
perlじゃなけりゃ
2018/03/08(木) 22:00:48.25ID:???
この2冊をこの順に読む
たのしいRuby 第5版、2016
みんなのPython 第4版、2017
たのしいから、先に読まないと、みんなので苦戦する
JS は、言語仕様がクソだから、その後で良い
(易しい) Ruby → Python → JS (クソ)
たのしいRuby 第5版、2016
みんなのPython 第4版、2017
たのしいから、先に読まないと、みんなので苦戦する
JS は、言語仕様がクソだから、その後で良い
(易しい) Ruby → Python → JS (クソ)
2018/03/08(木) 22:11:04.93ID:???
>>65
どうクソなのですか?
こいつ糞だなぁ。こういうとこがまじクソだなぁ。
と思うところを簡単に教えて下さい
自分は趣味だけでやるなら、javascriptは身近だからいいよとススメられたのですが
拡張機能も気軽に自分で作れるし、既存のサイトもすきなように走査できるからと。
どうクソなのですか?
こいつ糞だなぁ。こういうとこがまじクソだなぁ。
と思うところを簡単に教えて下さい
自分は趣味だけでやるなら、javascriptは身近だからいいよとススメられたのですが
拡張機能も気軽に自分で作れるし、既存のサイトもすきなように走査できるからと。
2018/03/08(木) 22:44:31.73ID:???
クソと言うのはソース表記上メソッド呼び出しとプロパティの違いが分からないようなことかな?
関数の取り回しがしづらいったりゃありゃしない。
proc、block、lambdaとか何の冗談仕様だありゃw
関数の取り回しがしづらいったりゃありゃしない。
proc、block、lambdaとか何の冗談仕様だありゃw
2018/03/08(木) 23:03:06.59ID:???
身近な面はあるけどバッチ書いて定期ファイル操作とかできないよね
2018/03/08(木) 23:55:51.18ID:???
っnode.js
2018/03/09(金) 01:03:23.45ID:???
無知識者にnode勧めるぐらいならphpやpythonの方がずっと健全では・・・
この場合一番健全なのはc++だと思うけど
この場合一番健全なのはc++だと思うけど
7165
2018/03/09(金) 01:34:52.15ID:??? (易しい) Ruby > Python >> JS >>> PHP (クソ)
Ruby, Python は、バッテリー同梱(batteries included)。
最初から標準ライブラリに、かなり使いやすいものが入っているけど、
JSは、全く逆の思想。
ほとんど何も入っていないから、jQuery, Lodash などがいる
JSの機能だけで作ると、面倒くさくてたまらない。
バグが多くなる
Rubyは、可読性が高いから、ほとんどバグを作らない。
ビジネスロジックがそのまま、コードに表れる
とにかく、勉強時間が掛からないから、初心者はRubyから、やるべき。
他の言語から始めると、時間が掛かる
Ruby, Python は、バッテリー同梱(batteries included)。
最初から標準ライブラリに、かなり使いやすいものが入っているけど、
JSは、全く逆の思想。
ほとんど何も入っていないから、jQuery, Lodash などがいる
JSの機能だけで作ると、面倒くさくてたまらない。
バグが多くなる
Rubyは、可読性が高いから、ほとんどバグを作らない。
ビジネスロジックがそのまま、コードに表れる
とにかく、勉強時間が掛からないから、初心者はRubyから、やるべき。
他の言語から始めると、時間が掛かる
2018/03/09(金) 01:41:25.14ID:???
2018/03/09(金) 01:46:46.85ID:???
じゃ、PHP勉強してる俺と糞まみれになろうや
2018/03/09(金) 01:46:51.04ID:???
お前がバグ量産してるのは言語のせいじゃねーべ
2018/03/09(金) 11:33:41.90ID:???
rubyの可読性は高くない。
pythonの「書きにくく読みやすい」と比較して「書きやすく読みにくい」と言われる。
そうなってしまう理由はたくさんあるが、ひとつのことをするのにやり方がたくさんあるというperlとかいう糞言語の信条をそのままパクってしまってることがひとつ。
またよくも悪くも設計が完全なオブジェクト指向にこだわっており、
javascriptなら関数ひとつで実現できることがblock、proc、lambdaと酷い有り様になっている。defで簡単に定義できまーすとかまさに初心者騙しもいいとこ。
また、流行り機能の無節操な取り込みが酷い。記号が足りなくなり、例えばオプショナルチェーンは他言語が?.のところrubyでは&.である。phpで文字列結合が"foo"+"bar"ではなく"foo"."bar"であるようなキモさ。
あとpythonと比べ多分野の優れたライブラリがない。あってもメンテされてない。作ってるやつが実用主義ではなく趣味だから。rubyでもできる!って言いたいだけ。よくも悪くもweb分野、しかもrails使うというやつ以外にはおすすめしない。
事実上rails専用言語。railsのDSLとして以外に存在価値はない。
初心者に勧めるなんてとんでもない。
pythonの「書きにくく読みやすい」と比較して「書きやすく読みにくい」と言われる。
そうなってしまう理由はたくさんあるが、ひとつのことをするのにやり方がたくさんあるというperlとかいう糞言語の信条をそのままパクってしまってることがひとつ。
またよくも悪くも設計が完全なオブジェクト指向にこだわっており、
javascriptなら関数ひとつで実現できることがblock、proc、lambdaと酷い有り様になっている。defで簡単に定義できまーすとかまさに初心者騙しもいいとこ。
また、流行り機能の無節操な取り込みが酷い。記号が足りなくなり、例えばオプショナルチェーンは他言語が?.のところrubyでは&.である。phpで文字列結合が"foo"+"bar"ではなく"foo"."bar"であるようなキモさ。
あとpythonと比べ多分野の優れたライブラリがない。あってもメンテされてない。作ってるやつが実用主義ではなく趣味だから。rubyでもできる!って言いたいだけ。よくも悪くもweb分野、しかもrails使うというやつ以外にはおすすめしない。
事実上rails専用言語。railsのDSLとして以外に存在価値はない。
初心者に勧めるなんてとんでもない。
2018/03/09(金) 11:52:22.49ID:???
なんでperlはどこででもクソといわれてしまうん?
77Name_Not_Found
2018/03/09(金) 12:29:32.77ID:lDqYKkmc 他人のソース引き継いでなんじゃこれってなる構文にクソってなるのが多い
シェルでワンライナーで使うなら今でもpythonよりいいんだけどね
シェルでワンライナーで使うなら今でもpythonよりいいんだけどね
2018/03/09(金) 14:44:59.34ID:???
>例えばオプショナルチェーンは他言語が?.のところrubyでは&.である。phpで文字列結合が"foo"+"bar"ではなく"foo"."bar"であるようなキモさ。
これ、お前が慣れてる手法以外はクソって言いたいだけだな
これ、お前が慣れてる手法以外はクソって言いたいだけだな
79Name_Not_Found
2018/03/09(金) 15:09:40.45ID:h9Dx26dw JavaScript本格入門~モダンスタイルによる基礎から現場での応用まで
http://gihyo.jp/book/2016/978-4-7741-8411-1
↑を読んだのですが次に
初めてのJavaScript
https://www.oreilly.co.jp/books/9784873117836/
と
JavaScriptパターン――優れたアプリケーションのための作法
https://www.oreilly.co.jp/books/9784873114880/
のどっちをようむか迷っています。
「初めての」は出版が最近なので最新の仕様に基づいて書かれているようだけど
一通り「本格入門」やったあとにやる必要があるのか、
「パターン」は古いけれどここでススメられた本だけど、アマゾンレビュー見ると上級者向けというレビューもあり
まよってます。
できれば3冊とも読んだことある人からのアドバイスあったらお願いします。
読んだことなければその旨示していただけると有り難いです。
ちなみにJavaScriptはじめて1,2ヶ月です。
http://gihyo.jp/book/2016/978-4-7741-8411-1
↑を読んだのですが次に
初めてのJavaScript
https://www.oreilly.co.jp/books/9784873117836/
と
JavaScriptパターン――優れたアプリケーションのための作法
https://www.oreilly.co.jp/books/9784873114880/
のどっちをようむか迷っています。
「初めての」は出版が最近なので最新の仕様に基づいて書かれているようだけど
一通り「本格入門」やったあとにやる必要があるのか、
「パターン」は古いけれどここでススメられた本だけど、アマゾンレビュー見ると上級者向けというレビューもあり
まよってます。
できれば3冊とも読んだことある人からのアドバイスあったらお願いします。
読んだことなければその旨示していただけると有り難いです。
ちなみにJavaScriptはじめて1,2ヶ月です。
2018/03/09(金) 15:13:04.82ID:???
>>78
75じゃないけど、オプショナルチェーンに関してはswiftも?.で、&.なんて使ってるのはrubyだけ
内容が空値でないか?のハテナと、メソッドチェーンのピリオドの組み合わせが一番可読性が高いのよ、この演算子だけはなんでこれなのか正直理解できないぐらい
75じゃないけど、オプショナルチェーンに関してはswiftも?.で、&.なんて使ってるのはrubyだけ
内容が空値でないか?のハテナと、メソッドチェーンのピリオドの組み合わせが一番可読性が高いのよ、この演算子だけはなんでこれなのか正直理解できないぐらい
2018/03/09(金) 15:37:20.10ID:???
>の組み合わせが一番可読性が高いのよ
(俺にとっては)一番可読性が高い、ですね
(俺にとっては)一番可読性が高い、ですね
2018/03/09(金) 16:05:08.48ID:???
>>79
javascript書くのに書籍は要らない
javascript書くのに書籍は要らない
2018/03/09(金) 16:15:54.14ID:???
>>80
直接的には識別子に?や!が使えるという言語仕様のせいだね。
if文とかif foo.bar? buz endみたいな書き方実際よくされてる。
そういう事情があっても&.はねーわwwwとか思っちゃうが。
直接的には識別子に?や!が使えるという言語仕様のせいだね。
if文とかif foo.bar? buz endみたいな書き方実際よくされてる。
そういう事情があっても&.はねーわwwwとか思っちゃうが。
2018/03/09(金) 16:22:18.90ID:???
2018/03/09(金) 16:22:29.44ID:???
俺が慣れ親しんだ記法じゃないからクソ
以外にないの?
以外にないの?
2018/03/09(金) 17:38:17.82ID:???
【悲報】Rubyクソ言語とバレてしまうwwww
https://qiita.com/ryo-ma/items/24c46592b45775e8644d
https://www.sejuku.net/blog/21300
何でもなんかしらのクラスのインスタンスという設計だからか関数レベルの取り回しが異常にしづらい。
jsの関数に慣れちゃうとアホ臭すぎるw
https://qiita.com/ryo-ma/items/24c46592b45775e8644d
https://www.sejuku.net/blog/21300
何でもなんかしらのクラスのインスタンスという設計だからか関数レベルの取り回しが異常にしづらい。
jsの関数に慣れちゃうとアホ臭すぎるw
2018/03/09(金) 18:31:28.45ID:???
俺が順応できなかったのは言語仕様がクソだからだ
追加入りました
追加入りました
2018/03/09(金) 19:34:44.80ID:???
流石に他所でやれ
2018/03/09(金) 19:44:08.39ID:???
>>87
それ突き詰めちゃうとアセンブリ書け、になっちゃうぞ。
簡単なことが簡単に書ける言語が初心者向けの良い言語、という尺度があっていい。
Rubyはオタク向けの言語だよ(Railsで使わざるを得ない人は除く)
「は~んこんなエレガントなコード書けたオレって天才~」って言っていつもシコってるもの。
なおそのエレガント()なコードは初心者には読めないw
初心者にRuby薦めるバカは自分がその初心者使ってキモチ良くなりたいだけで初心者のことなんてなにも考えてない。
それ突き詰めちゃうとアセンブリ書け、になっちゃうぞ。
簡単なことが簡単に書ける言語が初心者向けの良い言語、という尺度があっていい。
Rubyはオタク向けの言語だよ(Railsで使わざるを得ない人は除く)
「は~んこんなエレガントなコード書けたオレって天才~」って言っていつもシコってるもの。
なおそのエレガント()なコードは初心者には読めないw
初心者にRuby薦めるバカは自分がその初心者使ってキモチ良くなりたいだけで初心者のことなんてなにも考えてない。
2018/03/09(金) 19:47:57.24ID:???
>>89
いつものjq厨かお前
いつものjq厨かお前
2018/03/09(金) 19:49:00.72ID:???
無目的初心者にはC++勧めればいい
それで解決
それで解決
2018/03/09(金) 21:04:17.33ID:???
>>79
初めてのJavaScript 第3版、オライリー、2017
この本は、Ruby, Python とか、10年・数言語以上開発している人向け。
そのレベルの人が、この1冊で軽く、数十時間は掛かる。
初心者が読んでも無駄
JavaScript 第6版、2012、David Flanagan
Google などの開発者の机に必ず置いてある、この本と同じ。
東大とか、IQ 150 レベルの人が読んで、うんうん良い本だねって言う本
死にたいのなら、読みなさい!
初めてのJavaScript 第3版、オライリー、2017
この本は、Ruby, Python とか、10年・数言語以上開発している人向け。
そのレベルの人が、この1冊で軽く、数十時間は掛かる。
初心者が読んでも無駄
JavaScript 第6版、2012、David Flanagan
Google などの開発者の机に必ず置いてある、この本と同じ。
東大とか、IQ 150 レベルの人が読んで、うんうん良い本だねって言う本
死にたいのなら、読みなさい!
93Name_Not_Found
2018/03/10(土) 00:21:36.85ID:9Txzk9V/ >>92
何読めば良いのでしょう?
何読めば良いのでしょう?
2018/03/10(土) 00:25:05.30ID:???
まずはどちらも読まずに
とりあえずなにか作ってみてから
パターン読んで
またなにか作って
オライリー読むとか
とりあえずなにか作ってみてから
パターン読んで
またなにか作って
オライリー読むとか
2018/03/10(土) 00:43:57.62ID:???
パターン云々を考えたり本がどうのこうのって
いろんなものを自分で作って引き出しができたあとにすべきだな
何を実現するのに何が必要かわからない状態で何を学べるというのか
いろんなものを自分で作って引き出しができたあとにすべきだな
何を実現するのに何が必要かわからない状態で何を学べるというのか
2018/03/10(土) 15:37:18.99ID:???
イベントハンドリングをデレゲートする場合、
documentで受けるのが一般的だと思います
documentよりwindowの方が上位にありますが
なぜwindowで受けずにdocumentで受けるのでしょうか?
documentで受けるのが一般的だと思います
documentよりwindowの方が上位にありますが
なぜwindowで受けずにdocumentで受けるのでしょうか?
2018/03/10(土) 15:43:54.71ID:???
窓で受けたらガラスが割れちゃうだろ
2018/03/10(土) 16:08:59.03ID:???
2018/03/10(土) 16:26:07.08ID:???
というかなんでもdocumentにしてしまったらまずい局面もあるだろう
一般的と言ってはいけないのでは
一般的と言ってはいけないのでは
2018/03/10(土) 16:28:26.35ID:???
windowの下にはdocument以外にもいろいろぶら下がってるというのと
windowは普通省略されるからだと思う
http://www.webdesignleaves.com/wp/jquery/1631/
windowは普通省略されるからだと思う
http://www.webdesignleaves.com/wp/jquery/1631/
2018/03/10(土) 16:41:20.38ID:???
コンソールで
document
window
ってそれぞれうって中身を見てみればいい。
document
window
ってそれぞれうって中身を見てみればいい。
2018/03/10(土) 16:52:01.77ID:???
イベントハンドリングをデレゲートする、ってどういうこと?
103Name_Not_Found
2018/03/10(土) 17:06:15.62ID:6Oi/2BC2 >>102
たとえば<button>で起きるイベントをdocumentで管理する
たとえば<button>で起きるイベントをdocumentで管理する
2018/03/10(土) 17:08:40.35ID:???
>>102
ある要素のイベントをその親のイベントハンドラで受け取って処理すること
子が増減するたびに新しくイベントハンドラを作らなくて良くなる
その反面documentみたいに、いろんな要素からのイベントを受け取ってしまう場合は
どの要素から発生したイベントなのかをチェックする必要があり面倒くさい
なのでdocumentで受け取るなんて普通するか?
ある要素のイベントをその親のイベントハンドラで受け取って処理すること
子が増減するたびに新しくイベントハンドラを作らなくて良くなる
その反面documentみたいに、いろんな要素からのイベントを受け取ってしまう場合は
どの要素から発生したイベントなのかをチェックする必要があり面倒くさい
なのでdocumentで受け取るなんて普通するか?
2018/03/10(土) 17:09:19.57ID:???
2018/03/10(土) 17:11:56.30ID:???
<input typer="button" id="name">
--
document.getElementById("name").addEventListener("click", function)
こゆこと?
これを
イベントハンドリングをdocumentでうけてデレゲートする
って表現するの?
--
document.getElementById("name").addEventListener("click", function)
こゆこと?
これを
イベントハンドリングをdocumentでうけてデレゲートする
って表現するの?
2018/03/10(土) 17:13:09.02ID:???
タイプタイパータイペストwwwww
2018/03/10(土) 17:13:47.22ID:???
>>106
違う
違う
2018/03/10(土) 17:16:51.86ID:???
2018/03/10(土) 17:18:22.18ID:???
document.addEventListener("click", function)
2018/03/10(土) 17:19:23.93ID:???
>>104-105
発火した要素やparentNode再帰で、idやclassNameを見て切り分けたりする
jqueryのclassNameでのハンドリングがdocumentじゃなかったっけか
当然、<button>の中に<span>が入ってたりすると複雑化したり処理が多くなるが
どっちかっていうと
バブリングを踏まえて処理組んでたり
時系列的に同時に走られるとまずかったり
バブリング停止が混ざると厄介だったり、というほうの影響が大きいと思う
>>109
<div id="p1"><button>b1</button><button>b2</button></div>
document.getElementById('p1').addEventListener( 'click', function(){
if(e.target.tagName==='button'){ /* proc */ }
}, false );
みたいな
発火した要素やparentNode再帰で、idやclassNameを見て切り分けたりする
jqueryのclassNameでのハンドリングがdocumentじゃなかったっけか
当然、<button>の中に<span>が入ってたりすると複雑化したり処理が多くなるが
どっちかっていうと
バブリングを踏まえて処理組んでたり
時系列的に同時に走られるとまずかったり
バブリング停止が混ざると厄介だったり、というほうの影響が大きいと思う
>>109
<div id="p1"><button>b1</button><button>b2</button></div>
document.getElementById('p1').addEventListener( 'click', function(){
if(e.target.tagName==='button'){ /* proc */ }
}, false );
みたいな
2018/03/10(土) 17:19:33.16ID:???
>>107
添付 天パ テンペスト
添付 天パ テンペスト
2018/03/10(土) 17:21:17.13ID:???
また髪の話してる・・・
2018/03/10(土) 17:25:25.34ID:???
プログラミング業界ではdelegateは移譲を意味する
一般的な用語でおそらくインターネットが普及する以前から使われてきた用語だけど、
今の話の文脈のdelegateはjQueryが発端なのかな?
jQueryでは1.4.2からdelegateというこのイベントを親で受け取る機能が追加された
(他にも似たようなliveというメソッドがあったがこれらはイベント関連全てを扱うonに統合された)
果たしてこのjQueryのdelegate以前から使われていたのかどうか
ちなみにjQueryだと>>111のような面倒くさいことは必要なく
$('button').on('click', function() {・・・}) だと
$(document).on('click', 'button', function() {・・・}) と書き換えるだけでいい
多くの場合イベントハンドラの中身はそのまま使える、
またdocumentの代わりにbuttonの上位要素でも良い
一般的な用語でおそらくインターネットが普及する以前から使われてきた用語だけど、
今の話の文脈のdelegateはjQueryが発端なのかな?
jQueryでは1.4.2からdelegateというこのイベントを親で受け取る機能が追加された
(他にも似たようなliveというメソッドがあったがこれらはイベント関連全てを扱うonに統合された)
果たしてこのjQueryのdelegate以前から使われていたのかどうか
ちなみにjQueryだと>>111のような面倒くさいことは必要なく
$('button').on('click', function() {・・・}) だと
$(document).on('click', 'button', function() {・・・}) と書き換えるだけでいい
多くの場合イベントハンドラの中身はそのまま使える、
またdocumentの代わりにbuttonの上位要素でも良い
2018/03/10(土) 17:26:13.85ID:???
2018/03/10(土) 17:26:43.62ID:???
平日家に届く荷物
通常: 自分が家にいないと受け取れない
(再配達あるが例ということで)
デリゲート: 平日家にいる家族に自分宛荷物を受け取っといてくれと頼んどく
現実だといちいち頼まなくても家族が勝手に取っといてくれるだろうがコンピューターは融通がきかないのだ。
余計なことしないとも言う。勝手に開けられてて死亡したことあるしなw
通常: 自分が家にいないと受け取れない
(再配達あるが例ということで)
デリゲート: 平日家にいる家族に自分宛荷物を受け取っといてくれと頼んどく
現実だといちいち頼まなくても家族が勝手に取っといてくれるだろうがコンピューターは融通がきかないのだ。
余計なことしないとも言う。勝手に開けられてて死亡したことあるしなw
117111
2018/03/10(土) 17:28:54.32ID:??? >>111のfunctionの引数指定 (e) が抜けてた
まあ上位が取って、下位にイベントを当てる、みたいな雰囲気を理解してもらえればいい
プログラミング的にはできるだけ影響を少なく直上の要素などで受けるのが健全
個別にidをつけたり個別にaddEventListenerしたり、としなくてもいい等の利点がある
といっても高尚なパターンとかじゃなくて
誰でも思いついてやってることだと思う
まあ上位が取って、下位にイベントを当てる、みたいな雰囲気を理解してもらえればいい
プログラミング的にはできるだけ影響を少なく直上の要素などで受けるのが健全
個別にidをつけたり個別にaddEventListenerしたり、としなくてもいい等の利点がある
といっても高尚なパターンとかじゃなくて
誰でも思いついてやってることだと思う
2018/03/10(土) 17:32:12.24ID:???
なんでもdocumentで受けるのは
グローバル変数使い放題みたいな印象があるな
グローバル変数使い放題みたいな印象があるな
2018/03/10(土) 17:32:30.35ID:???
それよりliが動的に足し引きされるやつとかの対応だろ
動けばいいや派はここで積む
動けばいいや派はここで積む
2018/03/10(土) 17:35:18.21ID:???
>>119
そりゃcreateElementするときに個別にaddEventListenerしてからappendChildすれば済む
問題が出るのは、innerHTML操作しかできないわからない層ぐらいじゃね
そりゃcreateElementするときに個別にaddEventListenerしてからappendChildすれば済む
問題が出るのは、innerHTML操作しかできないわからない層ぐらいじゃね
121114
2018/03/10(土) 17:38:01.52ID:??? 書き忘れたが、今の話のdelegateがjQuery由来ではないのか?というのと
もう一つ、なんでもdocumentというのは、liveメソッドが原因じゃないのか?ということ
jQuery 1.4.2で追加されたdelegateは親要素を指定することができるのだが、
それよりも前に1.3から追加されたliveは親要素は指定できずにdocumentになっていた
(これがわかりづらいという意見があって最終的にonに統一されたのだけれども)
$( "button" ).live( "click", function() {・・・}) だと
buttonではなくdocumentで受け取るようになっていたわけだ
もう一つ、なんでもdocumentというのは、liveメソッドが原因じゃないのか?ということ
jQuery 1.4.2で追加されたdelegateは親要素を指定することができるのだが、
それよりも前に1.3から追加されたliveは親要素は指定できずにdocumentになっていた
(これがわかりづらいという意見があって最終的にonに統一されたのだけれども)
$( "button" ).live( "click", function() {・・・}) だと
buttonではなくdocumentで受け取るようになっていたわけだ
2018/03/10(土) 17:41:11.50ID:???
2018/03/10(土) 17:49:36.60ID:???
>>122
でも当時はdelegateなんて考えなかったからね
だからこそjQueryは内部の処理を隠蔽して
魔法のような機能をしてますみたいな感じだった
また移譲の認識を広めたのもjQuery 1.7から追加されたonメソッドなわけで
ウェブプログラマとDOM APIにかなりの影響を与えたライブラリだな
その数年後にDOM APIにようやくセレクタを使ったアクセスや
比較方法が追加されたわけだしね
でも当時はdelegateなんて考えなかったからね
だからこそjQueryは内部の処理を隠蔽して
魔法のような機能をしてますみたいな感じだった
また移譲の認識を広めたのもjQuery 1.7から追加されたonメソッドなわけで
ウェブプログラマとDOM APIにかなりの影響を与えたライブラリだな
その数年後にDOM APIにようやくセレクタを使ったアクセスや
比較方法が追加されたわけだしね
2018/03/10(土) 17:56:16.76ID:???
2018/03/10(土) 18:04:50.18ID:???
2018/03/10(土) 18:05:22.30ID:???
>>96
イベントバブリングを少しでも減らすためと思ってる
document.bodyにしないのは、HTMLタグの<body>が省略されてたり、2つ以上書かれてたりすると、
Javascript側のdocument.bodyが不定になるっぽいから
>>111
jQueryのon()を見た感じでは、指定された要素そのものにaddEventListener()してるっぽい
さすがにdocumentだけで全部を処理していると、targetの管理・分岐が大きくなりすぎて処理が重くなると思う
<button><img></button>
という構造の場合、<img>でイベントが発生した場合にevent.targetは<img>になるから、parentNodeをたどって、<button>に内包されてるか確認しなきゃいけない
jQueryもparentNodeをたどってる
第三者のライブラリを使うと自分で書く必要がなくなるというだけの話
イベントバブリングを少しでも減らすためと思ってる
document.bodyにしないのは、HTMLタグの<body>が省略されてたり、2つ以上書かれてたりすると、
Javascript側のdocument.bodyが不定になるっぽいから
>>111
jQueryのon()を見た感じでは、指定された要素そのものにaddEventListener()してるっぽい
さすがにdocumentだけで全部を処理していると、targetの管理・分岐が大きくなりすぎて処理が重くなると思う
<button><img></button>
という構造の場合、<img>でイベントが発生した場合にevent.targetは<img>になるから、parentNodeをたどって、<button>に内包されてるか確認しなきゃいけない
jQueryもparentNodeをたどってる
第三者のライブラリを使うと自分で書く必要がなくなるというだけの話
2018/03/10(土) 18:08:06.15ID:???
>>126
指定された要素そのものにaddEventListenerしているということは
その後に追加された同名classNameを持つ要素に対応できないということになるんだが
それとも、要素追加を監視して逐一リスナ貼り付けてるのか?
指定された要素そのものにaddEventListenerしているということは
その後に追加された同名classNameを持つ要素に対応できないということになるんだが
それとも、要素追加を監視して逐一リスナ貼り付けてるのか?
2018/03/10(土) 18:10:11.74ID:???
>>126
> jQueryのon()を見た感じでは、指定された要素そのものにaddEventListener()してるっぽい
そうだよ。こっそりdocumentになっていたのは古いliveメソッドの話
だからdocumentで受け取るなら
$(document).on('click', ~
とする。
そして本来の要素は第二引数に、このように書く
$(document).on('click', 'button', ~
親要素で受け取るという考え方が広まったので、普通に親イベントで受け取る
だけど、簡単に本来受け取りたかった要素 'button' を指定するのは引数一個と簡単で、
さらにthisは本来受け取りたかった要素になっている
> jQueryのon()を見た感じでは、指定された要素そのものにaddEventListener()してるっぽい
そうだよ。こっそりdocumentになっていたのは古いliveメソッドの話
だからdocumentで受け取るなら
$(document).on('click', ~
とする。
そして本来の要素は第二引数に、このように書く
$(document).on('click', 'button', ~
親要素で受け取るという考え方が広まったので、普通に親イベントで受け取る
だけど、簡単に本来受け取りたかった要素 'button' を指定するのは引数一個と簡単で、
さらにthisは本来受け取りたかった要素になっている
2018/03/10(土) 18:11:00.64ID:???
>>127
classNameで指定されたらclassNameでチェックすればいいだけでしょ
classNameで指定されたらclassNameでチェックすればいいだけでしょ
2018/03/10(土) 18:12:10.77ID:???
>>127
> 指定された要素そのものにaddEventListenerしているということは
> その後に追加された同名classNameを持つ要素に対応できないということになるんだが
だから普通にdocumentにon(addEventListener)するんだってばw
そしてonメソッドの第二引数に「指定された要素」を指定することで
まるで「指定された要素」そのものにaddEventListenerしたかのように
違いを吸収してくれている
> 指定された要素そのものにaddEventListenerしているということは
> その後に追加された同名classNameを持つ要素に対応できないということになるんだが
だから普通にdocumentにon(addEventListener)するんだってばw
そしてonメソッドの第二引数に「指定された要素」を指定することで
まるで「指定された要素」そのものにaddEventListenerしたかのように
違いを吸収してくれている
2018/03/10(土) 18:13:01.00ID:???
2018/03/10(土) 18:14:33.97ID:???
>>131
その結果がjQueryの複雑なチェック方法なのでは
その結果がjQueryの複雑なチェック方法なのでは
2018/03/10(土) 18:22:21.21ID:???
documentをリスナ追加対象にすれば重くなる
最小限の親要素をリスナ追加対象にすればその外に生じた要素に対応できない
対象を考えなきゃいけないのはjqueryなしと変わらない
どこにリスナが追加されるかを意識して使わないといけないのはjqueryなしと変わらない
なんでもかんでもdocumentに追加していては問題が生じる危険がある
いずれにしてもjqueryを使わず普通にできる
なるほど
最小限の親要素をリスナ追加対象にすればその外に生じた要素に対応できない
対象を考えなきゃいけないのはjqueryなしと変わらない
どこにリスナが追加されるかを意識して使わないといけないのはjqueryなしと変わらない
なんでもかんでもdocumentに追加していては問題が生じる危険がある
いずれにしてもjqueryを使わず普通にできる
なるほど
2018/03/10(土) 18:26:59.86ID:???
Jqueryは結局のところ初心者向けじゃないのかな
JQ無しでjs仕様がわかっててJQ無しでコード書けててJQの挙動がしっかり把握できてる人
が一行一文字でも書く文字減らしたいために使う
JQ無しでjs仕様がわかっててJQ無しでコード書けててJQの挙動がしっかり把握できてる人
が一行一文字でも書く文字減らしたいために使う
2018/03/10(土) 18:44:05.61ID:???
DOMはJavaScript初心者には難しすぎる
jQueryはJavaScript初心者にちょうどいい
jQueryはJavaScript初心者にちょうどいい
2018/03/10(土) 20:12:56.49ID:???
jQuery のソースコードには、IE9 なら、Android 4 ならとか、数十の分岐処理がある
JS で作る人は、これらの分岐処理でバグるから、正常に動作させるのに、10年以上掛かる
例えば、素のJSでは、要素の削除も、一旦その要素の親を取得してから、
親から見て、子供を削除する
var elem = document.getElementById('abc');
elem.parentNode.removeChild(elem);
こういうように書かないと、IE11 では動かない。
だから一々、どのブラウザでは動かないとか、頭を抱える
素のJSで作っている奴は、調べものばっかりして、頭を抱えているけど、
バグの多い製品しか作れないw
基本、調べものばかりしている奴は、コーディングの練習にもならないし、
時間を浪費して、上達しないから最悪
JS で作る人は、これらの分岐処理でバグるから、正常に動作させるのに、10年以上掛かる
例えば、素のJSでは、要素の削除も、一旦その要素の親を取得してから、
親から見て、子供を削除する
var elem = document.getElementById('abc');
elem.parentNode.removeChild(elem);
こういうように書かないと、IE11 では動かない。
だから一々、どのブラウザでは動かないとか、頭を抱える
素のJSで作っている奴は、調べものばっかりして、頭を抱えているけど、
バグの多い製品しか作れないw
基本、調べものばかりしている奴は、コーディングの練習にもならないし、
時間を浪費して、上達しないから最悪
2018/03/10(土) 20:17:15.01ID:???
グローバル変数相当に名前空間とクロージャそれぞれどういう長所短所ある?
前者はその都度MyApp.つけなくてはならず
ここの皆はどっち使ってる?
前者はその都度MyApp.つけなくてはならず
ここの皆はどっち使ってる?
2018/03/10(土) 20:24:02.46ID:???
どっちかしか使わないなんてない
名前空間といっても要するに1つのオブジェクトに押し込めるかどうかだけだし
名前空間といっても要するに1つのオブジェクトに押し込めるかどうかだけだし
2018/03/10(土) 20:47:24.77ID:???
>>136
今時趣味で作るならモダンブラウザオンリーで十分だと思うよ
仮に仕事でIE対応が必要だとしても、考え方が反対だと思う
やっぱり、対応方法はわかってるけど、自作するのは面倒くさい
そこで効果を理解してるライブラリを使うというのが正常だと思う
jQueryを何の為かどういう仕組みか分からず使ってる状態っていうのは
絶対に困る場面が出るし、jQueryの良さを引き出せないよ
今時趣味で作るならモダンブラウザオンリーで十分だと思うよ
仮に仕事でIE対応が必要だとしても、考え方が反対だと思う
やっぱり、対応方法はわかってるけど、自作するのは面倒くさい
そこで効果を理解してるライブラリを使うというのが正常だと思う
jQueryを何の為かどういう仕組みか分からず使ってる状態っていうのは
絶対に困る場面が出るし、jQueryの良さを引き出せないよ
2018/03/10(土) 20:51:51.34ID:???
今の時代は便利なものをどれだけ使いこなすかのほうが重要になっている
2018/03/10(土) 20:58:50.02ID:???
jQueryあにき今日も全開っすね( ´∀`)bグッ!
2018/03/10(土) 21:00:09.08ID:???
LSの機能使いたいけど、非対応ブラウザにも対応させたいけど、自分で書くのめんどい!人限定ライブラリ
2018/03/10(土) 21:01:09.03ID:???
>>140
なんか言うことが営業っぽい
なんか言うことが営業っぽい
2018/03/10(土) 21:47:48.46ID:???
2018/03/10(土) 21:59:53.65ID:???
>>138
どう使い分けてる?
どう使い分けてる?
2018/03/10(土) 22:34:40.91ID:???
>>145
使い分けという時点でなんか違う気がしないでもないんだけど
・どう使いたいか・あとから変更したいかどう変更したいか
・状態を持たせたいか持たせるときどんな感じで使うのか
・1個だけあればいいか複数複製したいかnewしたいのかコンストラクタ次第で色々変えたいか
とか色々ある、んだけど
でも手法全体は変えないで後から変更調整を
したいときでもわりとどうにでもなるよね
使い分けという時点でなんか違う気がしないでもないんだけど
・どう使いたいか・あとから変更したいかどう変更したいか
・状態を持たせたいか持たせるときどんな感じで使うのか
・1個だけあればいいか複数複製したいかnewしたいのかコンストラクタ次第で色々変えたいか
とか色々ある、んだけど
でも手法全体は変えないで後から変更調整を
したいときでもわりとどうにでもなるよね
2018/03/10(土) 23:29:09.80ID:???
148Name_Not_Found
2018/03/11(日) 11:21:14.91ID:Gy/uaNyu グローバル変数を1つ宣言するのと
関数を1つ宣言するのとでは
グローバルの汚染度は変わらないですよね?
関数を1つ宣言するのとでは
グローバルの汚染度は変わらないですよね?
2018/03/11(日) 11:37:34.87ID:???
>>148
console.log(globalOsen?'汚染されてる!':'汚染されてない');
var globalOsen = 'キャラメル';
と
console.log(globalOsen?'汚染されてる!':'汚染されてない');
function globalOsen() {
return 'キャラメル';
}
比べてみなよ。
console.log(globalOsen?'汚染されてる!':'汚染されてない');
var globalOsen = function() {
return 'キャラメル';
};
なら変わらないけど。
console.log(globalOsen?'汚染されてる!':'汚染されてない');
var globalOsen = 'キャラメル';
と
console.log(globalOsen?'汚染されてる!':'汚染されてない');
function globalOsen() {
return 'キャラメル';
}
比べてみなよ。
console.log(globalOsen?'汚染されてる!':'汚染されてない');
var globalOsen = function() {
return 'キャラメル';
};
なら変わらないけど。
2018/03/11(日) 12:03:35.32ID:???
なんで汚染だけローマ字なんだよ
グローバルもローマ字にしろや
グローバルもローマ字にしろや
2018/03/11(日) 12:04:51.10ID:???
2018/03/11(日) 12:11:47.07ID:???
こんな式を見たのですが、これは何ですか?
var data = ('' == 0 ? '' : '');
var data = ('' == 0 ? '' : '');
2018/03/11(日) 12:19:37.29ID:???
いいえ、あなたはそんな式を見ていません
2018/03/11(日) 12:24:51.79ID:???
>>153
過去スレで見ましたよ?
過去スレで見ましたよ?
2018/03/11(日) 12:25:35.10ID:???
>>150
そんなことしたらキャラメルが意味不明になるじゃん
そんなことしたらキャラメルが意味不明になるじゃん
2018/03/11(日) 12:27:22.76ID:???
かんちがいしてた。グローバルをローマ字にって話かw
2018/03/11(日) 12:29:38.91ID:???
>>149
順番が逆
var globalOsen = 'キャラメル';
console.log(globalOsen?'汚染されてる!':'汚染されてない');
function globalOsen() {
return 'キャラメル';
}
console.log(globalOsen?'汚染されてる!':'汚染されてない');
順番が逆
var globalOsen = 'キャラメル';
console.log(globalOsen?'汚染されてる!':'汚染されてない');
function globalOsen() {
return 'キャラメル';
}
console.log(globalOsen?'汚染されてる!':'汚染されてない');
2018/03/11(日) 12:29:59.73ID:???
>>156
おじいちゃん?
おじいちゃん?
2018/03/11(日) 12:33:33.61ID:???
2018/03/11(日) 12:42:32.18ID:???
汚染ならfilthyだろ
低学歴め
低学歴め
2018/03/11(日) 12:43:10.52ID:???
あんまりグローバルに関数宣言しない方がいいんでしょうか?
2018/03/11(日) 12:43:59.55ID:???
>>160
キャラメルとかけてるさっむいギャグがわからんのか
キャラメルとかけてるさっむいギャグがわからんのか
2018/03/11(日) 12:49:30.07ID:???
>>161
関数も変数もないよ。使うところ以上にスコープ広げるな
関数も変数もないよ。使うところ以上にスコープ広げるな
2018/03/11(日) 13:18:09.70ID:???
var globalOsen = false;
console.log(globalOsen?'汚染されてる!':'汚染されてない');
console.log(globalOsen?'汚染されてる!':'汚染されてない');
2018/03/11(日) 13:27:22.01ID:???
2018/03/11(日) 13:59:08.64ID:???
空にDocumentFragmentに要素を追加していって、最後にそれをDOMツリーに追加する
という方法をjQueryでやるにはどうすればいいのでしょうか?
という方法をjQueryでやるにはどうすればいいのでしょうか?
2018/03/11(日) 14:13:06.21ID:???
×空にDocumentFragment
○空のDocumentFragment
でした
○空のDocumentFragment
でした
2018/03/11(日) 14:25:05.03ID:???
>>167-168
スレ違いだからこっち↓に書いといたよ
+ JavaScript & jQuery 質問用スレッド vol.8 +
http://mevius.5ch.net/test/read.cgi/hp/1510321470/66
スレ違いだからこっち↓に書いといたよ
+ JavaScript & jQuery 質問用スレッド vol.8 +
http://mevius.5ch.net/test/read.cgi/hp/1510321470/66
2018/03/11(日) 14:35:10.79ID:???
>>169
見ましたが書かれていませんでした
引数を指定しなければDocumentFragmentになるんじゃないかと思って
$()
にappendしてからbodyにappendToしてみたりしましたがうまくいきません
jqueryでDocumentFragmentを作成するにはどうすればいいのでしょうか?
見ましたが書かれていませんでした
引数を指定しなければDocumentFragmentになるんじゃないかと思って
$()
にappendしてからbodyにappendToしてみたりしましたがうまくいきません
jqueryでDocumentFragmentを作成するにはどうすればいいのでしょうか?
2018/03/11(日) 14:39:16.31ID:???
ちゃんと書かれてるじゃんw
+ JavaScript & jQuery 質問用スレッド vol.8 +
http://mevius.5ch.net/test/read.cgi/hp/1510321470/66
66 Name_Not_Found sage 2018/03/11(日) 14:23:30.11 ID:???
こっちに書けマヌケ
+ JavaScript & jQuery 質問用スレッド vol.8 +
http://mevius.5ch.net/test/read.cgi/hp/1510321470/66
66 Name_Not_Found sage 2018/03/11(日) 14:23:30.11 ID:???
こっちに書けマヌケ
2018/03/11(日) 14:46:11.07ID:???
2018/03/11(日) 14:47:48.87ID:???
>>167
Using jQuery's $.map() Method To Convert Data Into Detached DOM Node Buffers
https://www.bennadel.com/blog/2280-using-jquery-s-map-method-to-convert-data-into-detached-dom-node-buffers.htm
jQuery Appends Multiple Elements Using Efficient Document Fragments
https://www.bennadel.com/blog/2281-jquery-appends-multiple-elements-using-efficient-document-fragments.htm
Using jQuery's $.map() Method To Convert Data Into Detached DOM Node Buffers
https://www.bennadel.com/blog/2280-using-jquery-s-map-method-to-convert-data-into-detached-dom-node-buffers.htm
jQuery Appends Multiple Elements Using Efficient Document Fragments
https://www.bennadel.com/blog/2281-jquery-appends-multiple-elements-using-efficient-document-fragments.htm
2018/03/11(日) 14:53:19.28ID:???
クズめ
67 Name_Not_Found sage 2018/03/11(日) 14:50:07.36 ID:???
マヌケじゃないのでこっちにはかかない
67 Name_Not_Found sage 2018/03/11(日) 14:50:07.36 ID:???
マヌケじゃないのでこっちにはかかない
2018/03/11(日) 14:53:50.08ID:???
専用スレがある場合はそっちで聞いたほうが、より詳しい回答が得られることがある
2018/03/11(日) 14:59:26.95ID:???
普通にjQueryでDocumentFragmentをappendできるんだな。
http://jsfiddle.net/hc5ED/6/
>>173を読むと場合によっては内部でDocumentFragmentが
使われるようであまり意識しないで良いのかもしれないな
http://jsfiddle.net/hc5ED/6/
>>173を読むと場合によっては内部でDocumentFragmentが
使われるようであまり意識しないで良いのかもしれないな
2018/03/11(日) 15:00:40.75ID:???
>>173
ありがとうございます
しかし英語ということもありよく分かりませんでした
jQueryオブジェクトを配列に入れてappendしたら
それはdocumentFragmentにされてからappendされる
ということでしょうか?
ありがとうございます
しかし英語ということもありよく分かりませんでした
jQueryオブジェクトを配列に入れてappendしたら
それはdocumentFragmentにされてからappendされる
ということでしょうか?
2018/03/11(日) 15:01:01.47ID:???
2018/03/11(日) 15:07:37.82ID:???
>>176
$(document.createDocumentFragment())
という方法は自分もさっき思いついてやってみましたが
無理矢理jQueryを使ってるみたいな感じが若干引っかかります
ある程度抽象化した方法でdocumentFragmentを作る方法を
jQueryが提供していればいいのですが。
配列にして渡したら良きにはからうから気にするなということでしょうか
ありがとうございました
$(document.createDocumentFragment())
という方法は自分もさっき思いついてやってみましたが
無理矢理jQueryを使ってるみたいな感じが若干引っかかります
ある程度抽象化した方法でdocumentFragmentを作る方法を
jQueryが提供していればいいのですが。
配列にして渡したら良きにはからうから気にするなということでしょうか
ありがとうございました
2018/03/11(日) 15:09:59.21ID:???
>>177
多分そういうことなんじゃないかなって思うけどよくわからないね
単に複数の要素をいっぺんに追加したいだけならjQueryのメソッドで普通にできるし
正直DocumentFragmentを使うほど速度が必要なことってない。
もし本当に速度が必要ならそこだけ局所的にDOM API使うだけだし、
jQueryで明示的にDocumentFragmentを使おうって思ったことがないな
多分そういうことなんじゃないかなって思うけどよくわからないね
単に複数の要素をいっぺんに追加したいだけならjQueryのメソッドで普通にできるし
正直DocumentFragmentを使うほど速度が必要なことってない。
もし本当に速度が必要ならそこだけ局所的にDOM API使うだけだし、
jQueryで明示的にDocumentFragmentを使おうって思ったことがないな
2018/03/11(日) 15:12:59.05ID:???
>>179
> 無理矢理jQueryを使ってるみたいな感じが若干引っかかります
別にそんな事ないよ。
https://api.jquery.com/jQuery/#jQuery-element に書いてあるとおり、
jQuery関数($関数)の引数にDOM要素を使うのはごく普通のことで
よく使われる $(document) だってDOM要素を使ってる。
createDocumentFragmentで作られるのもDOM要素の一種なんだから
それはごく普通の使い方
> 無理矢理jQueryを使ってるみたいな感じが若干引っかかります
別にそんな事ないよ。
https://api.jquery.com/jQuery/#jQuery-element に書いてあるとおり、
jQuery関数($関数)の引数にDOM要素を使うのはごく普通のことで
よく使われる $(document) だってDOM要素を使ってる。
createDocumentFragmentで作られるのもDOM要素の一種なんだから
それはごく普通の使い方
2018/03/11(日) 15:45:22.87ID:???
var variable = variable || 'char'; // 'char'以外でも123でもfunctionでも、あるいは2個でなく3個4個でも
この式は、どういう理屈で動いているんでしょうか?
variableの内容がundefinedだけでなくfalseになる値であっても内容が変わってしまう点はおいておくとしても
variableの内容に入りうるのがbooleanだけでないことや
||を&&に変えると右辺全体がtrueにならないと値が変更されないこと
||を&&に変えると右辺全体がtrueになるときでも&&で区切られた最後の値がvariableに入ることなど
どういう動作をするものなのか理解できません
この式は、どういう理屈で動いているんでしょうか?
variableの内容がundefinedだけでなくfalseになる値であっても内容が変わってしまう点はおいておくとしても
variableの内容に入りうるのがbooleanだけでないことや
||を&&に変えると右辺全体がtrueにならないと値が変更されないこと
||を&&に変えると右辺全体がtrueになるときでも&&で区切られた最後の値がvariableに入ることなど
どういう動作をするものなのか理解できません
2018/03/11(日) 15:54:26.47ID:???
右辺が云々は、単にvariableがfalsyなら新しい値を入れることを目的にしているから
入る値の方がbooleanだったりstringなのはそれで構わないコードなんだろう
要するにその変数に対してその段階に置けるデフォルト値を設定したい意図だと思う
入る値の方がbooleanだったりstringなのはそれで構わないコードなんだろう
要するにその変数に対してその段階に置けるデフォルト値を設定したい意図だと思う
2018/03/11(日) 15:56:51.99ID:???
論理演算子 - JavaScript | MDN
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/Logical_Operators
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/Logical_Operators
2018/03/11(日) 15:58:08.42ID:???
https://chrome.google.com/webstore/detail/save-my-eyes/mbhpdkldehghoilbopkcpfijdhnincmh?utm_source=chrome-app-launcher-info-dialog
このクロム拡張が勝手にマイニングしてるみたいなので暇なひとソースよんで解析して
自分にはわからなかった。
グーグルには不正行為通報したので削除されるのかな? 👀
Rock54: Caution(BBR-MD5:1777ba470a0705a8ff6b3177e04ccfb6)
このクロム拡張が勝手にマイニングしてるみたいなので暇なひとソースよんで解析して
自分にはわからなかった。
グーグルには不正行為通報したので削除されるのかな? 👀
Rock54: Caution(BBR-MD5:1777ba470a0705a8ff6b3177e04ccfb6)
2018/03/11(日) 16:03:50.28ID:???
>>185
面倒くさいんで、ソースコードどこかにアップして
面倒くさいんで、ソースコードどこかにアップして
2018/03/11(日) 16:03:59.62ID:???
>>184
ああ、javascriptの論理演算子の仕様そのものがそういう仕様なんですか
論理演算の結果はboolか、それか0 or 1で返す
ものだとばかり考えていて、特殊な構文か何かかと思っていました
ああ、javascriptの論理演算子の仕様そのものがそういう仕様なんですか
論理演算の結果はboolか、それか0 or 1で返す
ものだとばかり考えていて、特殊な構文か何かかと思っていました
2018/03/11(日) 16:42:58.24ID:???
>>187
結構多いぞ。こういう仕様の言語
結構多いぞ。こういう仕様の言語
2018/03/11(日) 17:02:42.46ID:???
>>188
他にはpythonくらいしか知らんわ
他にはpythonくらいしか知らんわ
2018/03/11(日) 17:44:13.35ID:???
cからして似たようなもんだった気が。
式1||式2の全体の評価結果は
式1の評価結果が0のとき式2の評価結果、
式1の評価結果が0以外のとき式1の評価結果(を直ちに返し式2は評価されない)
int a;
if (a = (3+2)||99) {
printf("%d", a);
}
結果は1ではなく5だったかと。
式1||式2の全体の評価結果は
式1の評価結果が0のとき式2の評価結果、
式1の評価結果が0以外のとき式1の評価結果(を直ちに返し式2は評価されない)
int a;
if (a = (3+2)||99) {
printf("%d", a);
}
結果は1ではなく5だったかと。
2018/03/11(日) 17:54:16.75ID:???
#include <stdio.h>
int main(){
int a;
a = ( 6 + 9 ) && ( 0 || 2 ) ;
printf("%d", a); // 1
}
int main(){
int a;
a = ( 6 + 9 ) && ( 0 || 2 ) ;
printf("%d", a); // 1
}
2018/03/11(日) 17:56:09.10ID:???
>>191
そうだっけ?そうだったらゴメン
そうだっけ?そうだったらゴメン
2018/03/11(日) 17:59:39.61ID:???
2018/03/11(日) 18:04:01.32ID:???
true/trueってなんだよtrue/falseです
2018/03/11(日) 18:08:48.24ID:???
2018/03/11(日) 18:20:47.03ID:???
下のコードが構造的にどうやって動いてるかいまいちよくわからない
formElementに2つの要素いれてそれにそれぞれイベントリスナーをついかしてるんだけど
なんでそれぞれ別個に作動するの?
2つめのformElementでcanvasHeightChange()を追加するときは
formElementに2つの要素がはいってるから両方にcanvasHeightChanged()が追加されるような気がするし
関数内でも別個に認識してcanvas.heightとcanvas.width変数を変更できる仕組みがよくわからない
<from>
canvas width: <input type="range" id="canvasWidth"
min="0" max="1000" step="1" value="500"> <br>
canvas Height: <input type="range" id="canvasHeight"
min="0" max="1000" step="1" value="500"><br>
</from>
formElement = document.getElementById("canvasWidth")
formElement.addEventListener('change', canvasWidthChanged, false)
formElement = document.getElementById("canvasHeight")
formElement.addEventListener('change', canvasHeightChanged, false)
function canvasWidthChanged(e) {
var target = e.target
theCanvas.width = target.value
drawScreen()
}
function canvasHeightChanged(e) {
var target = e.target
theCanvas.height = target.value
drawScreen()
}
formElementに2つの要素いれてそれにそれぞれイベントリスナーをついかしてるんだけど
なんでそれぞれ別個に作動するの?
2つめのformElementでcanvasHeightChange()を追加するときは
formElementに2つの要素がはいってるから両方にcanvasHeightChanged()が追加されるような気がするし
関数内でも別個に認識してcanvas.heightとcanvas.width変数を変更できる仕組みがよくわからない
<from>
canvas width: <input type="range" id="canvasWidth"
min="0" max="1000" step="1" value="500"> <br>
canvas Height: <input type="range" id="canvasHeight"
min="0" max="1000" step="1" value="500"><br>
</from>
formElement = document.getElementById("canvasWidth")
formElement.addEventListener('change', canvasWidthChanged, false)
formElement = document.getElementById("canvasHeight")
formElement.addEventListener('change', canvasHeightChanged, false)
function canvasWidthChanged(e) {
var target = e.target
theCanvas.width = target.value
drawScreen()
}
function canvasHeightChanged(e) {
var target = e.target
theCanvas.height = target.value
drawScreen()
}
2018/03/11(日) 18:43:57.11ID:???
フロム
2018/03/11(日) 18:47:17.08ID:???
199196
2018/03/11(日) 18:48:19.25ID:??? formElement = document.getElementById("canvasWidth") // ここでformElementにcanvasWidthをいれる
formElement.addEventListener('change', canvasWidthChanged, false) //formeElement経由でcanvasWidthの要素にcanvasWidthChanged()を付け足す
formElement = document.getElementById("canvasHeight") //上で入れた要素をは破棄されて中身が入れ替えられる
formElement.addEventListener('change', canvasHeightChanged, false) //ここでイベントリスナをついかする
ってことかな?
formElementの変数内でイベントリスナを管理してるわけななくて
経由して各要素に追加されてるってことなのかな?
formElement.addEventListener('change', canvasWidthChanged, false) //formeElement経由でcanvasWidthの要素にcanvasWidthChanged()を付け足す
formElement = document.getElementById("canvasHeight") //上で入れた要素をは破棄されて中身が入れ替えられる
formElement.addEventListener('change', canvasHeightChanged, false) //ここでイベントリスナをついかする
ってことかな?
formElementの変数内でイベントリスナを管理してるわけななくて
経由して各要素に追加されてるってことなのかな?
2018/03/11(日) 18:49:50.97ID:???
2018/03/11(日) 18:52:27.62ID:???
そろそろ、本は有害、って気がしてきた
2018/03/11(日) 18:55:51.00ID:???
その点webサイトは有益だよな!
2018/03/11(日) 19:04:34.30ID:???
なんで本の疑問をここで聞く?
本に作者のメールアドレスなり最近ならtwitterなり連絡先が書いてあるだろ
書いた人に聞くのが一番だよ、作者自身も今後の参考になるし
本に作者のメールアドレスなり最近ならtwitterなり連絡先が書いてあるだろ
書いた人に聞くのが一番だよ、作者自身も今後の参考になるし
2018/03/11(日) 19:10:46.95ID:???
javascriptの疑問かいたらあかんのかいなここ
じゃあ作者に聞くから英語に翻訳してくれ
じゃあ作者に聞くから英語に翻訳してくれ
2018/03/11(日) 19:16:04.65ID:???
>>199
その解釈で間違いないよ
その解釈で間違いないよ
2018/03/11(日) 21:33:26.87ID:???
2018/03/11(日) 21:57:24.80ID:???
>>207
曽言う問題じゃねぇよwww
ここはjQueryと書籍関連の質問は禁止
書籍に関する疑問→著者にきけ
jQueryに関する疑問→該当スレいけ
どっちもスレチなんですがwwwwwwwwwwwwwww
ばかはしね
曽言う問題じゃねぇよwww
ここはjQueryと書籍関連の質問は禁止
書籍に関する疑問→著者にきけ
jQueryに関する疑問→該当スレいけ
どっちもスレチなんですがwwwwwwwwwwwwwww
ばかはしね
2018/03/11(日) 22:35:08.51ID:???
2018/03/11(日) 22:37:16.49ID:???
2018/03/11(日) 22:39:05.56ID:???
2018/03/11(日) 22:40:44.28ID:???
2018/03/11(日) 22:44:51.31ID:???
2018/03/11(日) 22:48:37.37ID:???
>>213
勝手な自治を始めるな、見苦しい
勝手な自治を始めるな、見苦しい
2018/03/11(日) 22:54:55.85ID:???
>>196
これがjQueryのパワーw
<from>
canvas width: <input type="range" id="canvasWidth"
min="0" max="1000" step="1" value="500"> <br>
canvas Height: <input type="range" id="canvasHeight"
min="0" max="1000" step="1" value="500"><br>
</from>
$("#canvasWidth").on('change', function() {
theCanvas.width = this.value
drawScreen()
});
$("#canvasHeight").on('change', function() {
theCanvas.height = this.value
drawScreen()
}
これがjQueryのパワーw
<from>
canvas width: <input type="range" id="canvasWidth"
min="0" max="1000" step="1" value="500"> <br>
canvas Height: <input type="range" id="canvasHeight"
min="0" max="1000" step="1" value="500"><br>
</from>
$("#canvasWidth").on('change', function() {
theCanvas.width = this.value
drawScreen()
});
$("#canvasHeight").on('change', function() {
theCanvas.height = this.value
drawScreen()
}
2018/03/11(日) 22:59:21.59ID:???
jQueryアニキとjQueryアンチ自治アニキのコラボきたーーー
2018/03/11(日) 23:18:56.83ID:???
HTML/CSS のどんな質問に必ず優しく答えるスレ 31
946 名前:Name_Not_Found 2018/03/11(日) 16:49:34.27 ID:???>>940
sassはスレ違い
こいつは、あちこちのスレを荒らしてる奴だろ。
ちょっとでも、自分の知らない知識が書き込まれると、禁止にする荒らしだから、
相手にするな
946 名前:Name_Not_Found 2018/03/11(日) 16:49:34.27 ID:???>>940
sassはスレ違い
こいつは、あちこちのスレを荒らしてる奴だろ。
ちょっとでも、自分の知らない知識が書き込まれると、禁止にする荒らしだから、
相手にするな
2018/03/11(日) 23:23:29.61ID:???
219Name_Not_Found
2018/03/11(日) 23:24:52.94ID:klPoIp/x2018/03/11(日) 23:29:55.38ID:???
2018/03/11(日) 23:38:57.80ID:???
>>218
めんどくせぇやつ
めんどくせぇやつ
222Name_Not_Found
2018/03/11(日) 23:46:33.24ID:klPoIp/x >>220
spek wwwwwwwwwwwww
spek wwwwwwwwwwwww
2018/03/11(日) 23:47:46.35ID:???
突然の全レスに笑った
2018/03/11(日) 23:49:20.53ID:???
本に載っていたことであっても作者にしかわからないことと
誰でもわかることの二通り有るだろ。
作者にしかわからないことは作者に聞くしかないが
この場合は一般的なJavaScriptの話だ
で自治厨はそれに答えず、ただ単に自分が気に食わない話を
追い出してたいだけだってのがわかるだろう?
それもあって俺はずっとjQueryの話をするわけだよ。
>>196
> 2つめのformElementでcanvasHeightChange()を追加するときは
> formElementに2つの要素がはいってるから両方にcanvasHeightChanged()が追加されるような気がするし
変数には原則として一つの値しか入らない。
a = 1
a = 2
とやると最初に入れていたaは2で上書きされる。
だが変数に入っているものが単なる値ではなくオブジェクトの場合、
変数にはオブジェクトが入るのではなく、オブジェクトを示す参照が入る
だからこの時点では、= の左と右は同じオブジェクトを指し示している
formElement = document.getElementById("canvasWidth")
次のこれはそのオブジェクトに対してaddEventListenerするが
formElement.addEventListener('change', canvasWidthChanged, false)
その次のこれで、そのオブジェクトがなくなるわけではなく、
さっきのオブジェクトは生きたままで、formElementが指し示すものが変わるだけ
formElement = document.getElementById("canvasHeight")
誰でもわかることの二通り有るだろ。
作者にしかわからないことは作者に聞くしかないが
この場合は一般的なJavaScriptの話だ
で自治厨はそれに答えず、ただ単に自分が気に食わない話を
追い出してたいだけだってのがわかるだろう?
それもあって俺はずっとjQueryの話をするわけだよ。
>>196
> 2つめのformElementでcanvasHeightChange()を追加するときは
> formElementに2つの要素がはいってるから両方にcanvasHeightChanged()が追加されるような気がするし
変数には原則として一つの値しか入らない。
a = 1
a = 2
とやると最初に入れていたaは2で上書きされる。
だが変数に入っているものが単なる値ではなくオブジェクトの場合、
変数にはオブジェクトが入るのではなく、オブジェクトを示す参照が入る
だからこの時点では、= の左と右は同じオブジェクトを指し示している
formElement = document.getElementById("canvasWidth")
次のこれはそのオブジェクトに対してaddEventListenerするが
formElement.addEventListener('change', canvasWidthChanged, false)
その次のこれで、そのオブジェクトがなくなるわけではなく、
さっきのオブジェクトは生きたままで、formElementが指し示すものが変わるだけ
formElement = document.getElementById("canvasHeight")
2018/03/11(日) 23:50:27.67ID:???
いいか? jQueryの話をしている俺が
一番JavaScriptの質問に答えている
一番JavaScriptの質問に答えている
226196
2018/03/12(月) 00:03:27.59ID:??? なんとなくわかりました
ありがとうございます。
ありがとうございます。
2018/03/12(月) 00:18:07.79ID:???
どういたしまして
jQueryの素晴らしさを分かってくれたようで
よかったです
jQueryの素晴らしさを分かってくれたようで
よかったです
2018/03/12(月) 00:20:14.68ID:???
2018/03/12(月) 00:24:41.63ID:???
2018/03/12(月) 00:29:35.43ID:???
2018/03/12(月) 00:31:19.73ID:???
ステルスしてないんだから
ステマじゃねーだろw
ステマじゃねーだろw
2018/03/12(月) 00:50:47.08ID:???
2018/03/12(月) 00:55:00.69ID:???
>>232
どこがステマに当てはまるというの?
https://www.weblio.jp/content/%E3%82%B9%E3%83%86%E3%83%AB%E3%82%B9%E3%83%9E%E3%83%BC%E3%82%B1%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0
ステルスマーケティングとは、マーケティングの手法のうち、
それが宣伝であると消費者に悟られないように宣伝を行うことである。
ステルスマーケティングは、中立的な立場での批評を装ったり、
当の商品と直接の利害関係がないファンの感想を装ったりして行われる。
商品の特長の紹介や、評価システム上の評価をつり上げるなどの行為により、
多くのユーザーの目に触れさせ、またユーザーの商品に対する印象を上げることが主な目的とされる。
どこがステマに当てはまるというの?
https://www.weblio.jp/content/%E3%82%B9%E3%83%86%E3%83%AB%E3%82%B9%E3%83%9E%E3%83%BC%E3%82%B1%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0
ステルスマーケティングとは、マーケティングの手法のうち、
それが宣伝であると消費者に悟られないように宣伝を行うことである。
ステルスマーケティングは、中立的な立場での批評を装ったり、
当の商品と直接の利害関係がないファンの感想を装ったりして行われる。
商品の特長の紹介や、評価システム上の評価をつり上げるなどの行為により、
多くのユーザーの目に触れさせ、またユーザーの商品に対する印象を上げることが主な目的とされる。
2018/03/12(月) 01:02:35.95ID:???
本来なら実装全部貼るべきだが
せめてjqueryロードのためのscriptタグは省くなよ。
数万バイトに及ぶコード省いて何が「数行で書けます」だバカ。
せめてjqueryロードのためのscriptタグは省くなよ。
数万バイトに及ぶコード省いて何が「数行で書けます」だバカ。
235Name_Not_Found
2018/03/12(月) 01:06:51.53ID:/9a8Ci+K2018/03/12(月) 01:08:42.37ID:???
> jQueryかんけいないのにjQueryのおかげで解決したと
> さとられないように吹聴してるだろww
だからそれのどこがステマの定義に当てはまるの?ってきいてるんだが
> さとられないように吹聴してるだろww
だからそれのどこがステマの定義に当てはまるの?ってきいてるんだが
237Name_Not_Found
2018/03/12(月) 01:12:37.54ID:/9a8Ci+K >>236
それが宣伝であると消費者に悟られないように宣伝を行うことである。
これにまんま当てはまるだろwww
なんの関係もないのに実績をうたう
実績をうたってるが実際はなんもかんけいないjQueryのワードがなぜかできて宣伝をしてる
それが宣伝であると消費者に悟られないように宣伝を行うことである。
これにまんま当てはまるだろwww
なんの関係もないのに実績をうたう
実績をうたってるが実際はなんもかんけいないjQueryのワードがなぜかできて宣伝をしてる
2018/03/12(月) 01:13:54.36ID:???
荒らしと会話するな!
荒らしと会話する者も、荒らしやぞ!
荒らしと会話すると、荒らしが喜ぶだけ。
ずっと荒らされるから、荒らしはスルーせよ!
荒らしと会話する者も、荒らしやぞ!
荒らしと会話すると、荒らしが喜ぶだけ。
ずっと荒らされるから、荒らしはスルーせよ!
2018/03/12(月) 01:16:56.20ID:???
>>236
まずステマ(ステルスマーケティング)である以上
マーケティングでなければいけない。
何の商品のマーケティングをしているというのか?
無料のjQueryが普及した所でお金は入ってこない
これだとマーケティングではない
また消費者(お金払ってないので消費者でもないが)が
悟られないようにというが、お前は関係ない話だと見抜けなかったのか?
悟ってる以上、ステルスにはならない
まずステマ(ステルスマーケティング)である以上
マーケティングでなければいけない。
何の商品のマーケティングをしているというのか?
無料のjQueryが普及した所でお金は入ってこない
これだとマーケティングではない
また消費者(お金払ってないので消費者でもないが)が
悟られないようにというが、お前は関係ない話だと見抜けなかったのか?
悟ってる以上、ステルスにはならない
2018/03/12(月) 01:17:31.26ID:???
見りゃわかるだろうけど>>237へのレスの間違い
241Name_Not_Found
2018/03/12(月) 01:24:59.41ID:/9a8Ci+K2018/03/12(月) 01:27:47.01ID:???
2018/03/12(月) 01:28:54.91ID:???
まーたJQアニキがあらしてるのか
244Name_Not_Found
2018/03/12(月) 01:31:37.11ID:/9a8Ci+K2018/03/12(月) 01:33:00.59ID:???
荒らしではないステルスではないマーケティングをしてるのだ
堂々とマーケティングをしてるのだw
堂々とマーケティングをしてるのだw
2018/03/12(月) 01:49:45.83ID:???
そうそのとおり
ステマってのはスレ住人を装って
利害関係者が利害のために書籍のタイトルや評価を書いていったり
利害関係者が利害のために特定の言語を推したり
利害関係者が利害のために特定ウェブサイトのURLを事あるごとに書いたり
というような行為をすることを指すのだ
ステマってのはスレ住人を装って
利害関係者が利害のために書籍のタイトルや評価を書いていったり
利害関係者が利害のために特定の言語を推したり
利害関係者が利害のために特定ウェブサイトのURLを事あるごとに書いたり
というような行為をすることを指すのだ
2018/03/12(月) 01:53:41.83ID:???
2018/03/12(月) 01:56:53.54ID:???
>>247
隠れてするステマってぐたいてきにどんなんだよw
隠れてするステマってぐたいてきにどんなんだよw
249Name_Not_Found
2018/03/12(月) 02:00:15.19ID:/9a8Ci+K2018/03/12(月) 02:04:45.64ID:???
>>215にjQueryで解決してるじゃん
変数がないから根本的に解決できてる
変数がないから根本的に解決できてる
2018/03/12(月) 02:05:50.44ID:???
それを言ったら>>199で既に自己解決している
2018/03/12(月) 02:08:39.30ID:???
jqueryでなくても変数を使わず解決できる
document.getElementById('canvasWidth').addEventListener('change', canvasWidthChanged, false);
しかし質問者の疑問の本質はそこではないのでこれでは意味が無い
まあ質問者が理解できていなかったはずがないので何もかも意味が無いんだが
document.getElementById('canvasWidth').addEventListener('change', canvasWidthChanged, false);
しかし質問者の疑問の本質はそこではないのでこれでは意味が無い
まあ質問者が理解できていなかったはずがないので何もかも意味が無いんだが
2018/03/12(月) 02:27:35.40ID:???
JQアニキまだ暴れてんのか
2018/03/12(月) 06:52:28.82ID:???
ここで質問に答えてるみなさんはボランティアで?
2018/03/12(月) 20:05:07.48ID:???
違う
かっそかその今となってはむしろ
ありがたい質問者様に対して答えさせて頂いてるんだ
かっそかその今となってはむしろ
ありがたい質問者様に対して答えさせて頂いてるんだ
2018/03/13(火) 23:40:51.16ID:???
jQuery先輩に質問あるんだけどいいですか?
2018/03/13(火) 23:47:42.42ID:???
先輩ではなく兄貴と呼べ
2018/03/14(水) 20:17:45.75ID:???
アニキとセンパイって何が違うの?
2018/03/14(水) 20:28:09.76ID:???
.length()が違う
2018/03/14(水) 20:29:54.47ID:???
違う.lengthだ
'char'.length と ('char').length って何か違いあるんですか?
'char'.length と ('char').length って何か違いあるんですか?
2018/03/14(水) 20:37:12.29ID:???
2018/03/14(水) 21:04:33.33ID:???
ふーん、ひょうかひょうか
2018/03/14(水) 21:06:16.38ID:???
裸→逮捕
裸にラップを巻く→逮捕
見た目が変わらないので
裸にラップを巻く→逮捕
見た目が変わらないので
2018/03/14(水) 21:12:23.89ID:???
>>261
サンキュー兄貴
サンキュー兄貴
2018/03/14(水) 21:13:23.68ID:???
どういたしまして。jQuery以外の話題もOKだぜ!
2018/03/15(木) 00:31:51.77ID:???
2018/03/15(木) 00:32:53.15ID:???
2018/03/15(木) 14:50:12.00ID:???
JavaScriptを使って
意図的にリフローを発生させる方法があった気がするのですが
どういったものでしたか?
意図的にリフローを発生させる方法があった気がするのですが
どういったものでしたか?
2018/03/15(木) 21:42:04.01ID:???
2018/03/15(木) 21:52:38.47ID:???
2018/03/16(金) 00:14:57.21ID:???
2018/03/16(金) 18:26:29.42ID:???
aタグをクリックされてもフォーカスされないようにしたいです
clickイベントでpreventDefaultするとaタグを無効にできますが
フォーカスはされます
フォーカスを止めるにはどうすればいいですか?
clickイベントでpreventDefaultするとaタグを無効にできますが
フォーカスはされます
フォーカスを止めるにはどうすればいいですか?
2018/03/16(金) 18:42:28.19ID:???
除去すりゃいい
2018/03/16(金) 18:52:45.25ID:???
!focus
2018/03/16(金) 19:16:02.93ID:???
blur()
2018/03/16(金) 23:03:35.22ID:???
今セキュリティの本読んでるんだけどもしかしてjqueryより生のjavascriptのほうが強い?
ハッカー的な意味で
ハッカー的な意味で
2018/03/16(金) 23:06:51.78ID:???
ハッカー的な意味なら間違いなくjQueryの勝利だよ
2018/03/16(金) 23:28:49.15ID:???
じゃ、教科書的に解りやすいようjavascriptで書いてるだけか
2018/03/16(金) 23:33:22.58ID:???
JavaScriptの方が弱いからだよ。ハッカー的な意味で
2018/03/17(土) 02:10:46.70ID:???
ハッカー的な意味なら生のほうがつよい
2018/03/17(土) 02:11:52.18ID:???
>>276
ちなみになんて本?
ちなみになんて本?
2018/03/17(土) 02:24:10.63ID:???
基本
2018/03/17(土) 04:48:57.38ID:???
ハッカー的意味なら俺の隣で寝てるよ
2018/03/17(土) 05:07:24.78ID:???
(´・ω・`)はっかー
2018/03/17(土) 17:24:21.76ID:???
イケメンで高学歴のお前らに聞きたいんだけど
プログラミングを始めたいんだけど
javaScriptを学習するのってどうっすか?
今更、過ぎます?
プログラミングを始めたいんだけど
javaScriptを学習するのってどうっすか?
今更、過ぎます?
2018/03/17(土) 17:28:28.19ID:???
ハッカー的な意味ならおすすめ
つかちょっと前にこのスレで同じような質問あったから探してよんでみな
それ読んでまだなにかあったら質問してごらん。
つかちょっと前にこのスレで同じような質問あったから探してよんでみな
それ読んでまだなにかあったら質問してごらん。
2018/03/17(土) 17:38:18.09ID:???
javaScriptってブラウザで動く原始的な言語だと思ってたけど
ハッキングにも使えるんか!?
結構優れた言語なんだね
ハッキングにも使えるんか!?
結構優れた言語なんだね
2018/03/17(土) 17:42:03.26ID:???
その理屈だとアセンブリが最も優れた言語だな。最も原始的だけど。
289285
2018/03/17(土) 17:50:22.86ID:??? 同じような質問ってのが見つからんです。。。
ハッキングにも使えるスクリプト言語ってなんかすごそうだなぁと思った。
javaScriptを極めれば10年飯が食えますか?
せっかく学習しても10年衰退とかないよね?
教えてエロい人
ハッキングにも使えるスクリプト言語ってなんかすごそうだなぁと思った。
javaScriptを極めれば10年飯が食えますか?
せっかく学習しても10年衰退とかないよね?
教えてエロい人
2018/03/17(土) 17:57:26.99ID:???
291285
2018/03/17(土) 18:06:32.94ID:??? >>290
マジっすか!?
ハッキングからサーバーまで何でもできるんすね!
JavaScriptって結構優秀なんだねえ。
早速、勉強してみますわ。
ただ、JavaScriptのコード見てると目眩がするんだよな。。。
Pythonとかの方がコードがスッキリしてる感じ?
JavaScriptをすっ飛ばしてTypeScriptとか勉強するのってあり?
マジっすか!?
ハッキングからサーバーまで何でもできるんすね!
JavaScriptって結構優秀なんだねえ。
早速、勉強してみますわ。
ただ、JavaScriptのコード見てると目眩がするんだよな。。。
Pythonとかの方がコードがスッキリしてる感じ?
JavaScriptをすっ飛ばしてTypeScriptとか勉強するのってあり?
2018/03/17(土) 18:13:12.43ID:???
>>289
>javaScriptを極めれば10年飯が食えますか?
その質問は意味がないな。
なぜならJavaScriptを極めるためには、他の言語を
知らないといけないから。これはどの言語にも当てはまる。
一つの言語にこだわってもその言語を極めることはできない
何故かと言うとJavaScriptは進化し続けている言語だから。
今のJavaScriptと1年後のJavaScriptは違う他の言語を参考に良い機能を取り入れてる。
進化し続ける言語を極めるためには、言語に搭載されるよりも先に
搭載される可能性がある機能を知っていなければいけない。
JavaScriptだけをやっていても極められない。言語の進化のスピードに追いつけない
>javaScriptを極めれば10年飯が食えますか?
その質問は意味がないな。
なぜならJavaScriptを極めるためには、他の言語を
知らないといけないから。これはどの言語にも当てはまる。
一つの言語にこだわってもその言語を極めることはできない
何故かと言うとJavaScriptは進化し続けている言語だから。
今のJavaScriptと1年後のJavaScriptは違う他の言語を参考に良い機能を取り入れてる。
進化し続ける言語を極めるためには、言語に搭載されるよりも先に
搭載される可能性がある機能を知っていなければいけない。
JavaScriptだけをやっていても極められない。言語の進化のスピードに追いつけない
294285
2018/03/17(土) 18:24:31.86ID:??? お前ら、トンクス。
現状JavaScriptが最強そうだね。
JavaScriptの本買ってくるわ。
現状JavaScriptが最強そうだね。
JavaScriptの本買ってくるわ。
295285
2018/03/17(土) 18:34:22.50ID:??? >JavaScriptをすっ飛ばしてTypeScriptとか勉強するのってあり?
誰かこれについて教えろください。。。m(_ _)m
誰かこれについて教えろください。。。m(_ _)m
2018/03/17(土) 18:55:38.01ID:???
ホントはアリなんだけど
現状javascriptの知識がある前提の説明ばっかで辛いよ
現状javascriptの知識がある前提の説明ばっかで辛いよ
297285
2018/03/17(土) 18:59:37.28ID:???2018/03/17(土) 19:09:48.89ID:???
移り変わりの速い世界なので実際どうなるか分からんけど
あと10年で廃れることはないんじゃないの?
あと10年で廃れることはないんじゃないの?
2018/03/17(土) 20:19:49.26ID:???
>>281
どれって言うか脆弱性関係の本でXSSやクッキーやセッションを盗むとかHTMLのiframeのなかにjavascriptを埋め込むとか
そういう感じでちょこちょこ出てくるよ
脆弱性関係の本はふるいの多いけど今年の6月に徳丸浩さんの本が改訂されるって本人のブログで読んだ
どれって言うか脆弱性関係の本でXSSやクッキーやセッションを盗むとかHTMLのiframeのなかにjavascriptを埋め込むとか
そういう感じでちょこちょこ出てくるよ
脆弱性関係の本はふるいの多いけど今年の6月に徳丸浩さんの本が改訂されるって本人のブログで読んだ
2018/03/17(土) 20:54:36.71ID:???
本来の意味のハッカーじゃなくて
不正アクセスとか乗っ取りなんかの意味のハッカーだと流石に無理があるのでは
不正アクセスとか乗っ取りなんかの意味のハッカーだと流石に無理があるのでは
2018/03/17(土) 21:27:58.14ID:???
よそのサイトのソースを持ってくるってのは
同一生成元ポリシーとかで相手側のサーバが許可してない限りは
JavaScriptだけではどうしても無理なんでしょうか?
同一生成元ポリシーとかで相手側のサーバが許可してない限りは
JavaScriptだけではどうしても無理なんでしょうか?
2018/03/17(土) 21:37:31.34ID:???
2018/03/17(土) 22:09:59.89ID:???
>>301
無理
無理
2018/03/17(土) 22:17:56.67ID:???
JSというかブラウザのセキュリティ制約上許されない
305301
2018/03/17(土) 22:23:30.45ID:??? どうもありがとうございます
デスクトップで使う自分用アプリだったのですが
面倒だけどPHP経由させることにします
デスクトップで使う自分用アプリだったのですが
面倒だけどPHP経由させることにします
2018/03/17(土) 22:29:29.75ID:???
そういう用途ならhtaなりWebExtensionなり検討出来ない?
2018/03/17(土) 23:14:22.14ID:???
electronも
2018/03/17(土) 23:16:26.03ID:???
関数の定義をどこに書けばいいのよくわからないのですが
極端な場合で関数を100入れ子状態にするとき
一番深いとこ100個目の関数の定義は
function name() {}
で定義する時は階層的にどこに書けばいいんでしょう?
1 どこでもよい
2 一番上の層
3 99番目の層
極端な場合で関数を100入れ子状態にするとき
一番深いとこ100個目の関数の定義は
function name() {}
で定義する時は階層的にどこに書けばいいんでしょう?
1 どこでもよい
2 一番上の層
3 99番目の層
2018/03/17(土) 23:21:25.99ID:???
使う範囲が狭ければ最小限の場所とか広範囲で使うなら最上層とか
要するに自分が無知識状態から改修させられたとき楽なほうを選べばいいんじゃね
要するに自分が無知識状態から改修させられたとき楽なほうを選べばいいんじゃね
2018/03/17(土) 23:30:03.06ID:???
>>309
どこの層に定義を書いても、どの層からでも呼び出せるってことですか?
勉強しながら、コードのサンプルを1つのスクリプトファイルに無理やり少しずつ入れててってるんですが
ちょっと動かして整理したらうごかなくなっちゃってこまってるんですけど。
どこの層に定義を書いても、どの層からでも呼び出せるってことですか?
勉強しながら、コードのサンプルを1つのスクリプトファイルに無理やり少しずつ入れててってるんですが
ちょっと動かして整理したらうごかなくなっちゃってこまってるんですけど。
2018/03/17(土) 23:39:04.37ID:???
2018/03/17(土) 23:42:17.30ID:???
設計 それは ふれあいの言葉
2018/03/17(土) 23:43:03.23ID:???
>>285
まず、この本で勉強しろ
「たのしいRuby 第5版、2016」
JavaScript は、ES3 までは、まだマシ。
(だが、これでも、Ruby よりもかなり難しい)
ES5, ES6(2015)になると、手に負えない化物になる
初めてのJavaScript 第3版 ――ES2015以降の最新ウェブ開発、オライリー、2017
漏れは、10ほどのプログラミング言語を使えるが、
それでも、この本には頭を抱えるほど
この本を読むためには、まず数年以上、
Ruby などの簡単な言語で、基礎体力を付けるべき
その後じゃないと、読めない
まず、この本で勉強しろ
「たのしいRuby 第5版、2016」
JavaScript は、ES3 までは、まだマシ。
(だが、これでも、Ruby よりもかなり難しい)
ES5, ES6(2015)になると、手に負えない化物になる
初めてのJavaScript 第3版 ――ES2015以降の最新ウェブ開発、オライリー、2017
漏れは、10ほどのプログラミング言語を使えるが、
それでも、この本には頭を抱えるほど
この本を読むためには、まず数年以上、
Ruby などの簡単な言語で、基礎体力を付けるべき
その後じゃないと、読めない
2018/03/18(日) 02:40:34.21ID:???
クロムでvideoタグのコントロールバーをずっと表示させたいのだけどやり方分かる人います?
↓で出来るらしいのだができない
//assign video element to variable vid
var vid = document.getElementById("player");
function videoTimeUpdate(e)
{
//set controls settings to controls,this make controls show everytime this event is triggered
vid.setAttribute("controls","controls");
}
//add event listener to video for timeupdate event
vid.addEventListener('timeupdate', videoTimeUpdate, false);
↓で出来るらしいのだができない
//assign video element to variable vid
var vid = document.getElementById("player");
function videoTimeUpdate(e)
{
//set controls settings to controls,this make controls show everytime this event is triggered
vid.setAttribute("controls","controls");
}
//add event listener to video for timeupdate event
vid.addEventListener('timeupdate', videoTimeUpdate, false);
2018/03/18(日) 07:23:32.65ID:???
たのしいRuby→Python
を熱弁すると人ひとちょくちょく見る気がする
このスレ以外でもだいぶ前に同じようなこと言ってる人見たことある
まさか中の人じゃないとおもうけど
を熱弁すると人ひとちょくちょく見る気がする
このスレ以外でもだいぶ前に同じようなこと言ってる人見たことある
まさか中の人じゃないとおもうけど
2018/03/18(日) 13:53:31.50ID:???
317285
2018/03/18(日) 15:18:04.53ID:??? >>313
まじかよ。
JavaScriptはプロでも難しいのか。。。
トンクス。挫折したらRubyに逃げるわw
でも最近Rubyが息をしてないような気がするんだけど気のせいかな?
Pythonじゃあかんの?
まじかよ。
JavaScriptはプロでも難しいのか。。。
トンクス。挫折したらRubyに逃げるわw
でも最近Rubyが息をしてないような気がするんだけど気のせいかな?
Pythonじゃあかんの?
2018/03/18(日) 15:20:28.14ID:???
RubyってRailsありきですよね
2018/03/18(日) 15:51:56.02ID:???
2018/03/18(日) 16:03:42.78ID:???
プログラミングを始めたいレベルの人間が
Rubyが最近息してない等と語りだすスレ
Rubyが最近息してない等と語りだすスレ
2018/03/18(日) 16:06:21.74ID:???
>>317
Webの仕事してるけど初めてのJavaScriptで頭抱えるは無いわw
まあプログラミング自体が初めてというひと向けの本ではないがプロでも難しいは無い。あーまあwebはピンキリだから金もらってりゃプロという定義なら有り得なくもないが…
ともかくこういうのは自分が分からない→自分はそこそこのプログラマのはず分からないのはおかしい→言語が、本が難しいんだ!と心理学で言う防衛規制が絡んでくる話だから、この手の意見はあまり真に受けない方がいい
Webの仕事してるけど初めてのJavaScriptで頭抱えるは無いわw
まあプログラミング自体が初めてというひと向けの本ではないがプロでも難しいは無い。あーまあwebはピンキリだから金もらってりゃプロという定義なら有り得なくもないが…
ともかくこういうのは自分が分からない→自分はそこそこのプログラマのはず分からないのはおかしい→言語が、本が難しいんだ!と心理学で言う防衛規制が絡んでくる話だから、この手の意見はあまり真に受けない方がいい
2018/03/18(日) 16:29:00.49ID:???
今はtypescriptがあるから楽
2018/03/18(日) 17:42:03.74ID:???
もう何度言ってきたか分からないけど、JSの明らかな難しさってnew演算子の複雑な振る舞いだけじゃん
そのベースのプロトタイプチェーンとか、スコープチェーンっていうのは、簡単過ぎる程単純なんだからさ
ただ深く学ぼうとしたときに、その上に構築されてる旧/新クラスシステムを
シンボルや内部メソッド含めて理解する必要が出てくるから、確かにそれはやや難しいが、
きちんとベースのプロトタイプチェーンや各機能を理解できていれば
あとは仕様書を読む力をつけていけばいい
そのベースのプロトタイプチェーンとか、スコープチェーンっていうのは、簡単過ぎる程単純なんだからさ
ただ深く学ぼうとしたときに、その上に構築されてる旧/新クラスシステムを
シンボルや内部メソッド含めて理解する必要が出てくるから、確かにそれはやや難しいが、
きちんとベースのプロトタイプチェーンや各機能を理解できていれば
あとは仕様書を読む力をつけていけばいい
2018/03/18(日) 17:55:51.31ID:???
JavaScriptをやる前にRubyをやれとか頭おかしいやろ
Rubyの作者のマッツがネトウヨだということも最近発覚したし
やる必要性はゼロだと断言できる
Rubyの作者のマッツがネトウヨだということも最近発覚したし
やる必要性はゼロだと断言できる
2018/03/18(日) 18:17:30.90ID:???
所詮RailsのDSLとしてしか価値のない言語
326285
2018/03/18(日) 18:59:26.85ID:???2018/03/18(日) 19:02:06.65ID:???
ブラウザという協力な動線があるようなJSでも、Webを良く閲覧してるうちに興味が出てブログを始めて
もっと細かいことがしたくてHTML、CSSと学んでから来るのがやっぱり理想だと思う
本当に何がやりたいのかも分からないし、条件分岐やループの概念もチンプンカンプンならJSですらやらない方がいい
まずは実用的ではない、お遊びの言語環境から始めるべきだ
それなのに基本サーバーという裏方でREPLなRubyなんかを勧めるのはいけないと思う
学校の授業で先生が良い環境を整えてくれて学習要領も整えてくれるんなら別だけど
やっぱり初心者には基本的にはできるだけ絵を簡単に動かせるものからプログラミングを教えるべきだよ
だからお遊び言語か、オーサリングツールが発達してるもので学んでいったほうが良い
もっと細かいことがしたくてHTML、CSSと学んでから来るのがやっぱり理想だと思う
本当に何がやりたいのかも分からないし、条件分岐やループの概念もチンプンカンプンならJSですらやらない方がいい
まずは実用的ではない、お遊びの言語環境から始めるべきだ
それなのに基本サーバーという裏方でREPLなRubyなんかを勧めるのはいけないと思う
学校の授業で先生が良い環境を整えてくれて学習要領も整えてくれるんなら別だけど
やっぱり初心者には基本的にはできるだけ絵を簡単に動かせるものからプログラミングを教えるべきだよ
だからお遊び言語か、オーサリングツールが発達してるもので学んでいったほうが良い
2018/03/18(日) 19:11:11.40ID:???
excelはしらんけど
libre office やら google spreadsheetはjavascript つかえる
libre office やら google spreadsheetはjavascript つかえる
2018/03/18(日) 19:15:52.02ID:???
言語選びのセンスは悪くなさげだが何がしたいのかが分からんな
Windowsアプリを作りたいのか?
Windowsアプリを作りたいのか?
2018/03/18(日) 19:17:13.55ID:???
>>316
ライブラリはなしの方向でお願いします。
でもライブラリでできるってことは生JSでもできるってことだよね
動画プレイヤーにマウスオーバーするとコントロールバーが表示されるのだけど
マウスオーバーを偽装することとか出来たりする?
ライブラリはなしの方向でお願いします。
でもライブラリでできるってことは生JSでもできるってことだよね
動画プレイヤーにマウスオーバーするとコントロールバーが表示されるのだけど
マウスオーバーを偽装することとか出来たりする?
2018/03/18(日) 19:34:45.48ID:???
2018/03/18(日) 19:35:20.75ID:???
>>330
JavaScriptじゃないけど↓これとか
video::-webkit-media-controls-panel {
display: flex !important;
opacity: 1 !important;
}
JavaScriptじゃないけど↓これとか
video::-webkit-media-controls-panel {
display: flex !important;
opacity: 1 !important;
}
333285
2018/03/18(日) 19:52:15.08ID:??? >>329
機械学習やディープラーニングに興味あり!
WEB(ブラウザ)アプリにも興味あり!
Windowsアプリも作りたい!
色々やりたいんです。
PythonとJavaScriptなどのスクリプト言語でとりあえず学習して、
WindowsでGUIが簡単に作れそうで速度も早いC#の順で学習しようかと。。。
素人だけどこの3つは10年後も廃れてなさそうと思ったのですよ。
機械学習やディープラーニングに興味あり!
WEB(ブラウザ)アプリにも興味あり!
Windowsアプリも作りたい!
色々やりたいんです。
PythonとJavaScriptなどのスクリプト言語でとりあえず学習して、
WindowsでGUIが簡単に作れそうで速度も早いC#の順で学習しようかと。。。
素人だけどこの3つは10年後も廃れてなさそうと思ったのですよ。
2018/03/18(日) 19:53:27.75ID:???
良くてステマ荒らし、悪くてただの荒らし
2018/03/18(日) 20:01:51.53ID:???
>>330
> でもライブラリでできるってことは生JSでもできるってことだよね
生JSでやるにしても、ライブラリは良い参考書になるよ
実現してるコードが公開されてるんだから、それを参考にしない手はない
それから生JSでできるのにライブラリが有るのは大変だからだよ
自分が今何をやりたいのか、機能を実現したいのか
機能を実現するためのコードの勉強がしたいのか
どちらを優先させたいのかを考えたほうが良いね
> でもライブラリでできるってことは生JSでもできるってことだよね
生JSでやるにしても、ライブラリは良い参考書になるよ
実現してるコードが公開されてるんだから、それを参考にしない手はない
それから生JSでできるのにライブラリが有るのは大変だからだよ
自分が今何をやりたいのか、機能を実現したいのか
機能を実現するためのコードの勉強がしたいのか
どちらを優先させたいのかを考えたほうが良いね
2018/03/18(日) 20:32:05.89ID:???
本当に良い機能でいっぱいなら仕様に取り込まれてそう
2018/03/18(日) 20:47:38.37ID:???
能書きばっかりで何も作れなさそう
2018/03/18(日) 20:51:18.80ID:???
そんな単純な話じゃないよ
例えば標準に取り込まれたPromiseだけど取り込まれるまで
年も議論が続いた。今すぐ動くものが欲しい人にとっては死活問題だね
そしてPromiseだけど、さらにasync awaitという形に代わった
Promiseは当時のJavaScriptで実現可能なものだったけど、
そのJavaScript自体を変えていいならもっといい方法が候補になる
つまり仕様に取り込まれるときは代わってしまう
= 仕様に取り込まれてないように見えるということ
良い機能でいっぱいであっても仕様に取り込まれないものはたくさんある
それに加えてどうもJavaScriptは方針として言語には必要最小限の
ものしか搭載しないようにしている感じが有る
なぜならRubyで「本当に良いものだから仕様に取り込まれたもの」が
取り込まれていないから。RubyのarrayメソッドにはJavaScriptにはない
便利な機能が沢山仕様に取り込まれている。
https://ref.xaio.jp/ruby/classes/array
「本当に良い機能でいっぱいなら仕様に取り込まれてそう」が真であれば
これらは全て取り込まれているはず。
取り込まれてないので良い機能でも取り込まれるとは限らないという結論になる
例えば標準に取り込まれたPromiseだけど取り込まれるまで
年も議論が続いた。今すぐ動くものが欲しい人にとっては死活問題だね
そしてPromiseだけど、さらにasync awaitという形に代わった
Promiseは当時のJavaScriptで実現可能なものだったけど、
そのJavaScript自体を変えていいならもっといい方法が候補になる
つまり仕様に取り込まれるときは代わってしまう
= 仕様に取り込まれてないように見えるということ
良い機能でいっぱいであっても仕様に取り込まれないものはたくさんある
それに加えてどうもJavaScriptは方針として言語には必要最小限の
ものしか搭載しないようにしている感じが有る
なぜならRubyで「本当に良いものだから仕様に取り込まれたもの」が
取り込まれていないから。RubyのarrayメソッドにはJavaScriptにはない
便利な機能が沢山仕様に取り込まれている。
https://ref.xaio.jp/ruby/classes/array
「本当に良い機能でいっぱいなら仕様に取り込まれてそう」が真であれば
これらは全て取り込まれているはず。
取り込まれてないので良い機能でも取り込まれるとは限らないという結論になる
2018/03/18(日) 20:57:45.51ID:???
>>333
若いうちは元気があっていろいろやる気があるのは本当に素晴らしいけど
結論から言うと幅広く手を出すのは人間である限り無理だよ、どうしてもただの器用貧乏になっちゃう
それだけ各言語の環境っていうのは奥が深いし、更新速度も早い
英語もロシア語も中国語もあれもこれもやりたいって言って、
実際に日常会話くらいはできるようになる人はいくらでも居るだろうけど、
それ以上のスキルを付けて各国の事情に付いていくのは困難だよ
なんで困難かというと、そうこうしてるうちにあっという間に5年10年と経って
そうすると湧いて溢れる若い勢いが絶対に無くなってくるから
プログラミング自体に興味があってそれが目的ならやっぱりメインの言語を決める必要がある
そしてできる限りその言語を極めて言って、その言語で機械学習とか物を作る
もしくはプログラミングは手段だと完全に割り切って、機械学習やアプリとか
ものを作ることだけを目標に据えることができるのなら、手広くやることも可能かもしれない
若いうちは元気があっていろいろやる気があるのは本当に素晴らしいけど
結論から言うと幅広く手を出すのは人間である限り無理だよ、どうしてもただの器用貧乏になっちゃう
それだけ各言語の環境っていうのは奥が深いし、更新速度も早い
英語もロシア語も中国語もあれもこれもやりたいって言って、
実際に日常会話くらいはできるようになる人はいくらでも居るだろうけど、
それ以上のスキルを付けて各国の事情に付いていくのは困難だよ
なんで困難かというと、そうこうしてるうちにあっという間に5年10年と経って
そうすると湧いて溢れる若い勢いが絶対に無くなってくるから
プログラミング自体に興味があってそれが目的ならやっぱりメインの言語を決める必要がある
そしてできる限りその言語を極めて言って、その言語で機械学習とか物を作る
もしくはプログラミングは手段だと完全に割り切って、機械学習やアプリとか
ものを作ることだけを目標に据えることができるのなら、手広くやることも可能かもしれない
2018/03/18(日) 21:04:52.25ID:???
WEB絡みならぶっちゃけhtml/cssとphp/javascriptで十分なんだよな
2018/03/18(日) 21:12:43.97ID:???
javascriptは初心者向け!
rubyやphpはもう古いPythonがこの先長く生き残る!
これ最近のレスほとんど書籍ステマの自演だな
rubyやphpはもう古いPythonがこの先長く生き残る!
これ最近のレスほとんど書籍ステマの自演だな
2018/03/18(日) 21:15:58.74ID:???
>>339
だがな、機械学習・ディープラーリング
ウェブアプリ、Windowsアプリ、
Python、JavaScript、C#
この程度を覚えるのは大したことじゃないぞ
本気でやれば1年あれば全部できる
だがな、機械学習・ディープラーリング
ウェブアプリ、Windowsアプリ、
Python、JavaScript、C#
この程度を覚えるのは大したことじゃないぞ
本気でやれば1年あれば全部できる
2018/03/18(日) 21:22:40.74ID:???
なにをどう間違えたらラーニングがラーリングになるんだ
PC、タブレット、スマホ、どれでもそうはならんだろ・・・ガラケーとかか?
PC、タブレット、スマホ、どれでもそうはならんだろ・・・ガラケーとかか?
2018/03/18(日) 21:25:12.28ID:???
どっちにしろこれ以上はスレチ
2018/03/18(日) 21:25:28.59ID:???
>>338
Promiseがあってのasync awaitでしょ
各APIがPromiseを返したり扱うことができるから柔軟性がある
これが構文が先ということはできない
構文だけで済ますと極めて限定的だし
あと別に、必要最小限の ものしか搭載しないようにしている方針なんて無い
TC39の10人程度のコアメンバーが興味をもった順から入っていってるだけ
だからわかり易い例としてO.oなんてものが勢いだけで入りそうになる
これがArrayの色んなメソッドよりも重要なものか?と言われればそうではないだろう
まあArrayのメソッド拡張は度々提案があったが、進歩しないのには理由がある
Array.prototypeにメソッドを追加するとWebを壊しうるから
TC39は別にこの機能は世の中のJSerが本当に求めているものかどうか?は然程気にしないし、
方針が曖昧なことが本当に問題で不安要素なのだが、唯一Webを壊すな!ということは頑なに守ってきた
だからSymbol.unscopablesなんてお馬鹿なものまで追加したのだが
それでも一部守りきれなかったのでArray.prototype.valuesが今年までブラウザにOFFられてた
だから、Arrayの便利メソッドとかは、1.モジュールの仕組みを整えて、2.標準モジュールを定義して
それから要る場合にはimportして貰おうということになっていた
今ようやく1が完了して2に入っていくところ
だが今デコレーターとかホットな話題がたくさんあるので取り掛かりが2019年になるかもしれない
そして今valuesが思い切って導入されるように、その頃にはやっぱり思い切って普通に入れようということにもなりそうな気がする
というか現にメソッド1つや配列操作構文の単機能としては今も提案が挙がってる
まあこのように、O.oときもそうだがESは仕様決定がちょっと遅いことでより良い選択肢を取れて救われたことは本当に多い
遅いから、入ったときには役立たずというのだけは大間違い
特にJSでは、JS2.0で互換性破棄とか最も難しい立場の言語なんだから
明確な方針が無い今、これ以上スピードが増すのは危険でしか無い
まあ、ES2020くらいには結構便利なメソッドやら構文やらが入ってきて解決されてると思うよ
Promiseがあってのasync awaitでしょ
各APIがPromiseを返したり扱うことができるから柔軟性がある
これが構文が先ということはできない
構文だけで済ますと極めて限定的だし
あと別に、必要最小限の ものしか搭載しないようにしている方針なんて無い
TC39の10人程度のコアメンバーが興味をもった順から入っていってるだけ
だからわかり易い例としてO.oなんてものが勢いだけで入りそうになる
これがArrayの色んなメソッドよりも重要なものか?と言われればそうではないだろう
まあArrayのメソッド拡張は度々提案があったが、進歩しないのには理由がある
Array.prototypeにメソッドを追加するとWebを壊しうるから
TC39は別にこの機能は世の中のJSerが本当に求めているものかどうか?は然程気にしないし、
方針が曖昧なことが本当に問題で不安要素なのだが、唯一Webを壊すな!ということは頑なに守ってきた
だからSymbol.unscopablesなんてお馬鹿なものまで追加したのだが
それでも一部守りきれなかったのでArray.prototype.valuesが今年までブラウザにOFFられてた
だから、Arrayの便利メソッドとかは、1.モジュールの仕組みを整えて、2.標準モジュールを定義して
それから要る場合にはimportして貰おうということになっていた
今ようやく1が完了して2に入っていくところ
だが今デコレーターとかホットな話題がたくさんあるので取り掛かりが2019年になるかもしれない
そして今valuesが思い切って導入されるように、その頃にはやっぱり思い切って普通に入れようということにもなりそうな気がする
というか現にメソッド1つや配列操作構文の単機能としては今も提案が挙がってる
まあこのように、O.oときもそうだがESは仕様決定がちょっと遅いことでより良い選択肢を取れて救われたことは本当に多い
遅いから、入ったときには役立たずというのだけは大間違い
特にJSでは、JS2.0で互換性破棄とか最も難しい立場の言語なんだから
明確な方針が無い今、これ以上スピードが増すのは危険でしか無い
まあ、ES2020くらいには結構便利なメソッドやら構文やらが入ってきて解決されてると思うよ
2018/03/18(日) 21:28:39.81ID:???
es2100ってどうなってますか?
2018/03/18(日) 21:29:07.76ID:???
常々思うことだが営業みたいなしゃべりが目立つ
人材派遣の顔合わせについてきてる奴みたいな…
人材派遣の顔合わせについてきてる奴みたいな…
2018/03/18(日) 21:29:59.74ID:???
2018/03/18(日) 21:30:19.92ID:???
2018/03/18(日) 21:31:29.39ID:???
2018/03/18(日) 21:32:09.94ID:???
352285
2018/03/18(日) 21:34:37.51ID:???2018/03/18(日) 21:38:24.88ID:???
>>350
それはできればしたくないだろう
ES2015のときの話だが
だからまだましな解決策としてSymbol.unscopablesが導入されたが
それだけでは十分では無かった
だからもうimport "std:Array-Ex"みたいにやってくほうがベターかね
という雰囲気になって、しばらくそれ系の提案は勢いを潜めてるってことだ
物事はもっと複雑で、Web APIが返す配列がArrayを継承してくれる目処も経ってなかった頃だったしな
とりあえず、それ以上議論を攻めるような感じにはならなかったということ
それはできればしたくないだろう
ES2015のときの話だが
だからまだましな解決策としてSymbol.unscopablesが導入されたが
それだけでは十分では無かった
だからもうimport "std:Array-Ex"みたいにやってくほうがベターかね
という雰囲気になって、しばらくそれ系の提案は勢いを潜めてるってことだ
物事はもっと複雑で、Web APIが返す配列がArrayを継承してくれる目処も経ってなかった頃だったしな
とりあえず、それ以上議論を攻めるような感じにはならなかったということ
2018/03/18(日) 21:42:09.40ID:???
なら、Array拡張するモジュールを標準化すれば良いのでは?
デフォルトではArrayはそのまま、標準化された
ArrayExをimportすれば拡張される
まあいいや、
どちらにしろ
> 本当に良い機能でいっぱいなら仕様に取り込まれてそう
という意見は間違いで、良い機能でいっぱいであっても
仕様に取り込まれないことはよくある話ってことだよ
デフォルトではArrayはそのまま、標準化された
ArrayExをimportすれば拡張される
まあいいや、
どちらにしろ
> 本当に良い機能でいっぱいなら仕様に取り込まれてそう
という意見は間違いで、良い機能でいっぱいであっても
仕様に取り込まれないことはよくある話ってことだよ
2018/03/18(日) 21:47:23.24ID:???
良くわからんが相当癇に障ったらしい
2018/03/18(日) 21:49:39.03ID:???
? 単に良いものなら取り入れられるっていうのは
考えが甘いって話をしてるだけだよ。
良くても取り入れられないものはたくさんあるのが現実
考えが甘いって話をしてるだけだよ。
良くても取り入れられないものはたくさんあるのが現実
2018/03/18(日) 21:52:57.16ID:???
>>354
標準化すれば良いのでは?って……
今まで説明した話を聞いていなかったのか?
標準モジュールの話が本腰入れてできるようになったのは、
ES2015後切り離して議論していたモジュールの構文以外の部分がようやくまとまって実装されだした今だし、
valuesもONにしたりOFFにしたり様子を見てたが、ONにしていって大丈夫だろうという判断が出た今からが
配列のメソッドに手を入れていくムードになり得るということだよ、物事には流れや雰囲気っていうのがあるんだからね
でも今はもう個別のメソッドが提案されてるし、やっぱりまとめてどっさりではなく1個1個入れていく形になるかもねってこと
それはそれで、そっちのほうが良いだろうよ
とりあえずRubyか何かを真似してどっさり持ってくるよりもさ
それでね、一番言いたかったのは、「お前が提案してこいよ!!いやしてください」ってことなんだけど
伝わらなかった?
標準化すれば良いのでは?って……
今まで説明した話を聞いていなかったのか?
標準モジュールの話が本腰入れてできるようになったのは、
ES2015後切り離して議論していたモジュールの構文以外の部分がようやくまとまって実装されだした今だし、
valuesもONにしたりOFFにしたり様子を見てたが、ONにしていって大丈夫だろうという判断が出た今からが
配列のメソッドに手を入れていくムードになり得るということだよ、物事には流れや雰囲気っていうのがあるんだからね
でも今はもう個別のメソッドが提案されてるし、やっぱりまとめてどっさりではなく1個1個入れていく形になるかもねってこと
それはそれで、そっちのほうが良いだろうよ
とりあえずRubyか何かを真似してどっさり持ってくるよりもさ
それでね、一番言いたかったのは、「お前が提案してこいよ!!いやしてください」ってことなんだけど
伝わらなかった?
2018/03/18(日) 21:56:42.76ID:???
伝わらなかった?って俺がいつ標準化しろって言ったんだ?
標準化する方法はあるって話をしただけ
俺は良いものであっても標準化されるとは限らないって話をしてる
標準化する方法はあるって話をしただけ
俺は良いものであっても標準化されるとは限らないって話をしてる
2018/03/18(日) 22:03:44.31ID:???
>>358
俺は良いものであっても標準化されるとは限らないと言わずに
標準化されるように提案しようと言ってる
なぜなら「本当に良いもの」なんて個人次第だから
それを提案して皆に認められて仕様に入って実装されて初めて「本当に良いもの」と言えるんだよ
それには時期とタイミングっていうのがある
Rubyに入ってる「本当に良いもの」だから、今JSに入れても「本当に良いもの」になるというわけではない
JSが大きく関わっているWebの他の物や開発者、実装などの準備やタイミングもあるんだよ
だから、もし今その「本当に良いもの」が「本当に良いもの」になれると思うのなら提案すればいい
それぞれの言語の事情を踏まえないと他の言語を引き合いに出しても仕方がない
俺は、「本当に良いもの」はきちんと然るべきときに導入されてきてると思うよ
俺は良いものであっても標準化されるとは限らないと言わずに
標準化されるように提案しようと言ってる
なぜなら「本当に良いもの」なんて個人次第だから
それを提案して皆に認められて仕様に入って実装されて初めて「本当に良いもの」と言えるんだよ
それには時期とタイミングっていうのがある
Rubyに入ってる「本当に良いもの」だから、今JSに入れても「本当に良いもの」になるというわけではない
JSが大きく関わっているWebの他の物や開発者、実装などの準備やタイミングもあるんだよ
だから、もし今その「本当に良いもの」が「本当に良いもの」になれると思うのなら提案すればいい
それぞれの言語の事情を踏まえないと他の言語を引き合いに出しても仕方がない
俺は、「本当に良いもの」はきちんと然るべきときに導入されてきてると思うよ
2018/03/18(日) 22:05:12.59ID:???
お?喧嘩か?
2018/03/18(日) 22:09:57.09ID:???
いや、喧嘩はする気はない、明日仕事6時からだし遠慮してくれ
2018/03/18(日) 22:25:07.88ID:???
若いなら色々手を出したほうがいい
でも年取ってものいうのは専門性だから
すこしずつ絞っていくようにすればいい
どれを選ぶかは仕事でなにをやるかとかそういうもので決まっていくことが多い
プログラム以外の強い分野もも1つくらいつくようにするとなおよし
でも年取ってものいうのは専門性だから
すこしずつ絞っていくようにすればいい
どれを選ぶかは仕事でなにをやるかとかそういうもので決まっていくことが多い
プログラム以外の強い分野もも1つくらいつくようにするとなおよし
363313
2018/03/19(月) 01:20:17.17ID:??? 素人の行き方には、根拠が無い。
C#が目標でも、C#からは行けない。そういう道がない。
Java から行かないと無理だろ
JavaScript(JS), Python にも、直接行く道がない。
素人は、行けると思うけど、漏れら、10言語以上知っていると、無理だとわかる
「たのしいRuby 第5版、2016」
これを読んで無理なら、それ以上進めない
JSなどは、オブジェクト指向・クラスじゃないだろ。
いきなりプロトタイプだから、JSの内部の実装を学んだ所で、何もならないし時間の無駄。
ビジネスロジックとは無関係
Rubyで、Sinatra を、full scratch で書く方が速い。
それがRails を作る事と同じ
「Node.js超入門、掌田津耶乃、2017」
この本を読めばわかるが、
Node.jsを、full scratch で書くと、Sinatra と同じ。
Node.js + Express + Bookshelf が、Rails と同じ
「10日でおぼえる jQuery 入門教室 第2版、山田祥寛(よしひろ)、2013」
この本が、RubyのNokogiri と同じ
最初から、JSで苦しむより、Rubyでフレームワークを学んでから、
Node.jsへ行った方が、ずっと速い
C#が目標でも、C#からは行けない。そういう道がない。
Java から行かないと無理だろ
JavaScript(JS), Python にも、直接行く道がない。
素人は、行けると思うけど、漏れら、10言語以上知っていると、無理だとわかる
「たのしいRuby 第5版、2016」
これを読んで無理なら、それ以上進めない
JSなどは、オブジェクト指向・クラスじゃないだろ。
いきなりプロトタイプだから、JSの内部の実装を学んだ所で、何もならないし時間の無駄。
ビジネスロジックとは無関係
Rubyで、Sinatra を、full scratch で書く方が速い。
それがRails を作る事と同じ
「Node.js超入門、掌田津耶乃、2017」
この本を読めばわかるが、
Node.jsを、full scratch で書くと、Sinatra と同じ。
Node.js + Express + Bookshelf が、Rails と同じ
「10日でおぼえる jQuery 入門教室 第2版、山田祥寛(よしひろ)、2013」
この本が、RubyのNokogiri と同じ
最初から、JSで苦しむより、Rubyでフレームワークを学んでから、
Node.jsへ行った方が、ずっと速い
2018/03/19(月) 06:20:24.93ID:???
今ではマルチパラダイムが主流だし
古典的なクラスに完全に縛られてるクラスベース言語も無くなってきてるんだから
プロトタイプベースのJSで、クラスとはオブジェクト指向に於ける抽象化プログラミングの一種だと
認識していたほうが、他の言語に言っても理解が早い
古典的なクラスに完全に縛られてるクラスベース言語も無くなってきてるんだから
プロトタイプベースのJSで、クラスとはオブジェクト指向に於ける抽象化プログラミングの一種だと
認識していたほうが、他の言語に言っても理解が早い
2018/03/19(月) 09:46:21.40ID:???
2018/03/19(月) 10:48:48.75ID:???
Rubyはオブジェクト指向を突き詰めるとの本末転倒ぷりを身をもって示してくれた、クソ原理主義言語。
rails以外に存在価値なし。
rails以外に存在価値なし。
2018/03/19(月) 13:07:14.18ID:???
2018/03/19(月) 14:49:04.84ID:???
超初心者の質問をお願いします!
iOS safariで、ブラウザ閲覧中のスリープ時に何か処理を実行したいのですが
どのようにすればいいでしょうか?
visibilitychangeとhiddenでiOS以外のブラウザでは実行できるのですが。。。
よろしくお願い致します
iOS safariで、ブラウザ閲覧中のスリープ時に何か処理を実行したいのですが
どのようにすればいいでしょうか?
visibilitychangeとhiddenでiOS以外のブラウザでは実行できるのですが。。。
よろしくお願い致します
2018/03/19(月) 16:30:00.40ID:???
Document.visibilityState
2018/03/19(月) 17:10:26.09ID:???
https://developer.mozilla.org/ja/docs/Web/Reference/Events/visibilitychange
これみるとIE phone以外対応してることになってるけど?
これみるとIE phone以外対応してることになってるけど?
2018/03/19(月) 18:55:41.13ID:???
やさしいRubyアニキとjQueryアニキはどっちが長男なの?
2018/03/19(月) 18:56:27.30ID:???
スリープ時はタイマーも止まる可能性大だし、処理が継続できる保証もない
PCでスリープした時を考えると当たり前だと思うだろう
スリープ時になにかするという事は避けたほうが良い
PCでスリープした時を考えると当たり前だと思うだろう
スリープ時になにかするという事は避けたほうが良い
2018/03/19(月) 22:33:15.65ID:???
ブラウザ閲覧中のスリープ時
の意味がわからん
の意味がわからん
2018/03/19(月) 22:50:42.11ID:???
タブ切替じゃないの?
375Name_Not_Found
2018/03/20(火) 00:34:03.84ID:hIzW1Vha 改めて質問させていただきます。
MonacaとAngularJSで開発を行っているのですが、時刻を取得し更新するプログラムが動きません。
ソースコードは下にアップロードしています。
https://jsfiddle.net/da5goyvL/1/
(https://gist.github.com/anonymous/31a1c1aa48bfe6673cb97c333b238b43)
一応、実行時の時刻は表示されるのですが、intervalで時刻の更新ができていません。
console.logでnow_secondsの内容を出力させてみると(intervalで)、きちんと取得できているみたいです。
ということは時刻が反映されていないだけだと思うのですが、その方法(時計の作りかた)をどなたかご教示願います。
MonacaとAngularJSで開発を行っているのですが、時刻を取得し更新するプログラムが動きません。
ソースコードは下にアップロードしています。
https://jsfiddle.net/da5goyvL/1/
(https://gist.github.com/anonymous/31a1c1aa48bfe6673cb97c333b238b43)
一応、実行時の時刻は表示されるのですが、intervalで時刻の更新ができていません。
console.logでnow_secondsの内容を出力させてみると(intervalで)、きちんと取得できているみたいです。
ということは時刻が反映されていないだけだと思うのですが、その方法(時計の作りかた)をどなたかご教示願います。
2018/03/20(火) 00:35:06.77ID:???
別タブなり別アプリなり開いてる間も処理し続けるとか、最初からそういうものでなきゃ「迷惑だからやめろ」って思うんだが……
2018/03/20(火) 00:42:34.07ID:???
this.seconds に now_secondsを代入した後に now_seconds を変更しても this.seconds とは連動せんからな、そりゃ変わらんだろうよ
2018/03/20(火) 00:51:38.27ID:???
ライブラリ使うとそんなこともわからない人材ができあがるのか
ソース見てないけど
ソース見てないけど
2018/03/20(火) 00:55:33.80ID:???
裏でこっそりマイニングさせようとしてて
スリープとか別アプリとかされた時にサーバに通知させたい動機だったりして
スリープとか別アプリとかされた時にサーバに通知させたい動機だったりして
2018/03/20(火) 01:02:11.82ID:???
var a=[1,{b:true},3];
var b=a.concat();
b[2]=5;
a[1].b=false;
console.log(a);//[1,{b:false},3]
console.log(b);//[1,{b:false},5]
concatでシャローコピーしたつもりなのですが
a[2],b[2]は成功
しかし、a[1],b[1]のオブジェクトはどっちもfalseになっていて
干渉していました・・・
forで繰り返して構築する以外に
完璧なシャローコピー(?)をするにはどうしたらいいですか
var b=a.concat();
b[2]=5;
a[1].b=false;
console.log(a);//[1,{b:false},3]
console.log(b);//[1,{b:false},5]
concatでシャローコピーしたつもりなのですが
a[2],b[2]は成功
しかし、a[1],b[1]のオブジェクトはどっちもfalseになっていて
干渉していました・・・
forで繰り返して構築する以外に
完璧なシャローコピー(?)をするにはどうしたらいいですか
2018/03/20(火) 02:20:16.77ID:???
これはだめ?
b = JSON.parse(JSON.stringify(a))
b = JSON.parse(JSON.stringify(a))
2018/03/20(火) 02:22:04.86ID:???
2018/03/20(火) 03:02:34.64ID:???
2018/03/20(火) 03:17:58.02ID:???
https://qiita.com/knhr__/items/d7de463bf9013d5d3dc0
ここにもいろいろのっとる
ここにもいろいろのっとる
2018/03/20(火) 04:43:56.71ID:???
>>381
日付型とかが壊れる
日付型とかが壊れる
2018/03/20(火) 06:24:41.95ID:???
JSON.parseは循環参照に対応していないので平坦化/組み立ての作業が必要
387Name_Not_Found
2018/03/20(火) 07:40:52.00ID:d02cAYYX 質問です
var A.prototype.hoge = function(){
this.array = [];
}
var B.prototype.hoge = function(){
console.log(A.prototype.array.length);
}
とやってもAのthis.arrayが取得できません
どのように取得したらよいのでしょうか?
var A.prototype.hoge = function(){
this.array = [];
}
var B.prototype.hoge = function(){
console.log(A.prototype.array.length);
}
とやってもAのthis.arrayが取得できません
どのように取得したらよいのでしょうか?
2018/03/20(火) 08:37:32.48ID:???
何をやりたいのか意味不明だけど、A.prototype.hoge(); しないとarrayが作られないじゃん
それとvarいらんだろ
それとvarいらんだろ
389Name_Not_Found
2018/03/20(火) 12:46:26.35ID:hIzW1Vha >>377
次のようにコード書き換えてみたのですが、表示が変化しないです。
var date = new Date();
this.hours = date.getHours();
this.minutes = date.getMinutes();
this.seconds = date.getSeconds();
var timer = $interval(function(){
this.hours = new Date().getHours();
this.minutes = new Date().getMinutes();
this.seconds = new Date().getSeconds();
}, 1000);
もしかして、intervalサービス中でUIの書き換えを行うことはできないのでしょうか(デッドロック阻止??)?
次のようにコード書き換えてみたのですが、表示が変化しないです。
var date = new Date();
this.hours = date.getHours();
this.minutes = date.getMinutes();
this.seconds = date.getSeconds();
var timer = $interval(function(){
this.hours = new Date().getHours();
this.minutes = new Date().getMinutes();
this.seconds = new Date().getSeconds();
}, 1000);
もしかして、intervalサービス中でUIの書き換えを行うことはできないのでしょうか(デッドロック阻止??)?
2018/03/20(火) 13:27:14.82ID:???
$intervalって何
2018/03/20(火) 13:45:10.99ID:???
2018/03/20(火) 14:49:36.90ID:???
angularとか小洒落たもんつかってんな
2018/03/20(火) 21:15:00.40ID:???
アドブロックブロックの原理ってどうなってんのあれ?
解除したいんだけど。
解除したいんだけど。
2018/03/20(火) 21:18:29.67ID:???
・そのサイトを使うのをやめる
・そのサイトがアドブロックブロックやってることを宣伝拡散
・そのサイトがアドブロックブロックやってることを宣伝拡散
2018/03/20(火) 22:16:12.31ID:???
アドブロックブロック対策のために
検出不可能なアドブロックを作りたい
検出不可能なアドブロックを作りたい
2018/03/21(水) 00:55:49.00ID:???
tampermonkeyで実行してるスクリプトの変数に
コンソールからアクセス出来る?
コンソールからアクセス出来る?
2018/03/21(水) 14:28:54.86ID:???
>>395
今は要素を消したり隠したりを表のレイヤーでやるから感知されうるが
Houdini系APIを利用してレンダリングのレベルで調整すればバレにくくなる
ただそれでも今ではどうしても痕跡が残るが
もし拡張機能からより上位のレイヤーを調整できるようにさせてもらえれば可能かも
今は要素を消したり隠したりを表のレイヤーでやるから感知されうるが
Houdini系APIを利用してレンダリングのレベルで調整すればバレにくくなる
ただそれでも今ではどうしても痕跡が残るが
もし拡張機能からより上位のレイヤーを調整できるようにさせてもらえれば可能かも
2018/03/21(水) 14:43:19.41ID:???
>>397
完璧を目指すと最悪ブラウザ作ることにはなるんだろうなっては思ってる
あと要素を消したり隠したりするからバレるわけだよね。
それをやらなければいい。やり方はあって(というか昔やってた)
画像の場合は透明画像にすり替える。他の形式もそれぞれダミーにすり替える。
要素は消さない。ただ見えないだけ。
これだけで結構検出は難しくなると思うよ
あとはJavaScriptによる自動操作、HTMLを書き換えると検出されそうだから
ページが読み込んでるいずれかのJavaScriptファイルを書き換えて
匿名関数の即時実行で処理させる。またwindow.openなどの関数を
オーバーライドして処理を割り込ませる
アイデアは有るけどそれを拡張機能として作るのが面倒だなw
完璧を目指すと最悪ブラウザ作ることにはなるんだろうなっては思ってる
あと要素を消したり隠したりするからバレるわけだよね。
それをやらなければいい。やり方はあって(というか昔やってた)
画像の場合は透明画像にすり替える。他の形式もそれぞれダミーにすり替える。
要素は消さない。ただ見えないだけ。
これだけで結構検出は難しくなると思うよ
あとはJavaScriptによる自動操作、HTMLを書き換えると検出されそうだから
ページが読み込んでるいずれかのJavaScriptファイルを書き換えて
匿名関数の即時実行で処理させる。またwindow.openなどの関数を
オーバーライドして処理を割り込ませる
アイデアは有るけどそれを拡張機能として作るのが面倒だなw
2018/03/21(水) 14:46:50.35ID:???
あと拡張機能でHTTPプロキシみたいなことできるんだろうか?
できなければプロキシ作れば良いんだけどhttps対応がめんどいな
できなければプロキシ作れば良いんだけどhttps対応がめんどいな
2018/03/21(水) 15:05:57.00ID:???
逆の観点で言って、プロキシでフィルター通しても
画面に本来必要不可欠な処理と統合されたら対応不可能になるんじゃない?
画面に本来必要不可欠な処理と統合されたら対応不可能になるんじゃない?
2018/03/21(水) 15:54:55.89ID:???
>>400
そういうのが広告である以上、広告配信側からの制限も有るので
統合するのは難しいと思ってる。つまりサイト側は広告内容には手を出せない
広告を表示しないようにするからバレるわけで
サイト側は広告を表示したつもりだけど広告内容が無害なものにすり替わる
サイト側は広告内容に手を出せないという前提を満たしている限りどうしようも
例えばポップアップウインドウ。これはポップアップを
出さなくするのではなくポップアップを出すのだけれど、
内容を広告ではなく自動でクローズするHTMLにすり替える
これでポップアップウインドウが開いたかどうかの判定を騙せる
透明広告画像にすり替えるのも同じ理由ね。
サイト側は表示したつもりになっている
そういうのが広告である以上、広告配信側からの制限も有るので
統合するのは難しいと思ってる。つまりサイト側は広告内容には手を出せない
広告を表示しないようにするからバレるわけで
サイト側は広告を表示したつもりだけど広告内容が無害なものにすり替わる
サイト側は広告内容に手を出せないという前提を満たしている限りどうしようも
例えばポップアップウインドウ。これはポップアップを
出さなくするのではなくポップアップを出すのだけれど、
内容を広告ではなく自動でクローズするHTMLにすり替える
これでポップアップウインドウが開いたかどうかの判定を騙せる
透明広告画像にすり替えるのも同じ理由ね。
サイト側は表示したつもりになっている
2018/03/21(水) 16:07:07.44ID:???
javascript OFF、iframeも遮断、できればサードパーティURLも遮断、が一番
それをわかってるからchromeとかfirefoxはjavascript切る設定を見えなくしてる
結局javascriptが害悪
それをわかってるからchromeとかfirefoxはjavascript切る設定を見えなくしてる
結局javascriptが害悪
2018/03/21(水) 16:16:36.63ID:???
>>402
その理屈だとHTMLが害悪ってことにならんのか?
その理屈だとHTMLが害悪ってことにならんのか?
2018/03/21(水) 16:35:35.74ID:???
イベントリスナーに変数渡したいのだがやり方がわからない
セッションストレージに一旦突っ込んでよびだせばいい?
それともグローバル変数にするか?
検索したら
https://qiita.com/rukiadia/items/03aaa8955c0f6576a5e7
が出てきたけど初心者の自分にはやり取りが難しくて結局どうなのかよくわからん。
セッションストレージに一旦突っ込んでよびだせばいい?
それともグローバル変数にするか?
検索したら
https://qiita.com/rukiadia/items/03aaa8955c0f6576a5e7
が出てきたけど初心者の自分にはやり取りが難しくて結局どうなのかよくわからん。
2018/03/21(水) 16:40:53.78ID:???
害悪はターゲティング広告や(第三者を介した)アクセス解析
HTMLというよりjavascript, cookie, refererだな
iframeですら呼び出し元がわからなければ広告手段としては劣るようになる
これらが欠けるほどターゲティング広告等は成立しづらくなる
HTMLというよりjavascript, cookie, refererだな
iframeですら呼び出し元がわからなければ広告手段としては劣るようになる
これらが欠けるほどターゲティング広告等は成立しづらくなる
2018/03/21(水) 16:45:58.36ID:???
>>404
前段のどっちでもいい、それで問題がなければ一向に構わない
後段はjavascriptによって
<button>を
<button data-hoge="渡したい変数の中身">にして
関数でdata-hoge(コード中ではbuttonElement.dataset.hogeになる)を使ってるだけ
要するにjavascript側で保持するんじゃなくてhtmlに保持させる格好
これでもいい
前段のどっちでもいい、それで問題がなければ一向に構わない
後段はjavascriptによって
<button>を
<button data-hoge="渡したい変数の中身">にして
関数でdata-hoge(コード中ではbuttonElement.dataset.hogeになる)を使ってるだけ
要するにjavascript側で保持するんじゃなくてhtmlに保持させる格好
これでもいい
2018/03/21(水) 17:35:45.62ID:???
cssのposition:absoluteと
JSの e.pageX の座標は一致するの?
JSの e.pageX の座標は一致するの?
2018/03/21(水) 17:39:08.64ID:???
>>404
のコメ欄より
addEventListener を使用している場合は、第二引数で handleEvent プロパティを持つオブジェクトを指定して下さい。
document.querySelector('.jscBtn').addEventListener('click', {name: 'my name', handleEvent: function handleEvent (event) {
console.log(this.name); // "my name"
}}, false);
のコメ欄より
addEventListener を使用している場合は、第二引数で handleEvent プロパティを持つオブジェクトを指定して下さい。
document.querySelector('.jscBtn').addEventListener('click', {name: 'my name', handleEvent: function handleEvent (event) {
console.log(this.name); // "my name"
}}, false);
2018/03/21(水) 20:21:17.67ID:???
2018/03/21(水) 20:28:46.69ID:???
>>409
見た目派手すぎる広告をどうにかしたいだけだったら
アドブロックブロック対策的には
広告のサイズをwidth: 10px !important; overflow: hidden; とかするだけで完了すんじゃね
要素消してない、隠してない、srcset属性変わらない、つまり検知できない
見た目派手すぎる広告をどうにかしたいだけだったら
アドブロックブロック対策的には
広告のサイズをwidth: 10px !important; overflow: hidden; とかするだけで完了すんじゃね
要素消してない、隠してない、srcset属性変わらない、つまり検知できない
2018/03/21(水) 20:47:58.48ID:???
2018/03/21(水) 22:11:58.49ID:???
>>408
そういやそういう仕様があったなw
jQueryで書くとこうなる。DOM API作ってるやつ
センスなさすぎだろう
$('.jscBtn').on('click', {name: 'my name'}, function(event) {
console(event.data.name); // "my name"
});
そういやそういう仕様があったなw
jQueryで書くとこうなる。DOM API作ってるやつ
センスなさすぎだろう
$('.jscBtn').on('click', {name: 'my name'}, function(event) {
console(event.data.name); // "my name"
});
2018/03/21(水) 22:29:08.80ID:???
414412
2018/03/21(水) 22:44:18.81ID:??? × console(event.data.name); // "my name"
○ console.log(event.data.name); // "my name"
>>404
リンク先読んで頭痛くなってきた
なんでこいつらこんな馬鹿なやり取りしてるんだ?
あんたが初心者だから難しくてわからないんじゃない。
リンク先の奴らが初心者で試行錯誤してるから、それ見てもわからないのは当たり前
まずセッションストレージはたかがイベントリスナーに変数を渡す程度では重すぎる
グローバル変数も、どこで書き換えられるか分からんのだから使ったらダメ
>>408のようにaddEventListenerの機能に助けてもらうのもありだけど
それを使わないとするなら、最初に出るべきコードはこれだろう
var handler = (function(data) {
return function() {
console.log(data.name);
}
}({name: 'my name'}));
なれないと見にくいだろうけど↑は関数(イベントリスナー)を返す無名関数をすぐに実行する書き方
その関数に変数を紐づけているという形
document.querySelector('.jscBtn').addEventListener('click', handler, false);
○ console.log(event.data.name); // "my name"
>>404
リンク先読んで頭痛くなってきた
なんでこいつらこんな馬鹿なやり取りしてるんだ?
あんたが初心者だから難しくてわからないんじゃない。
リンク先の奴らが初心者で試行錯誤してるから、それ見てもわからないのは当たり前
まずセッションストレージはたかがイベントリスナーに変数を渡す程度では重すぎる
グローバル変数も、どこで書き換えられるか分からんのだから使ったらダメ
>>408のようにaddEventListenerの機能に助けてもらうのもありだけど
それを使わないとするなら、最初に出るべきコードはこれだろう
var handler = (function(data) {
return function() {
console.log(data.name);
}
}({name: 'my name'}));
なれないと見にくいだろうけど↑は関数(イベントリスナー)を返す無名関数をすぐに実行する書き方
その関数に変数を紐づけているという形
document.querySelector('.jscBtn').addEventListener('click', handler, false);
2018/03/21(水) 22:49:15.11ID:???
というかタイトルが「引数を渡す」で???ってなる
416412
2018/03/21(水) 22:53:06.72ID:??? >>413
その書き方はJavaScriptっぽくないからね
何故かと言うと、その書き方は(昔の?)Javaのように
引数に関数を使用できない言語のための書き方
(DOM APIはJavaScriptだけの仕様ではないことに注意)
引数に関数を渡せないから、代わりに特別なメソッドを用意したオブジェクトを渡す
擬似言語で書くならば、こんな使い方を想定した仕様
class MyHandler implements Handler {
constructor(data) {
this.data = data
}
override handleEvent() {
console.log(this.data.name)
}
}
var handler = new MyHandler({name: 'my name'})
document.querySelector('.jscBtn').addEventListener('click', handler, false);
その書き方はJavaScriptっぽくないからね
何故かと言うと、その書き方は(昔の?)Javaのように
引数に関数を使用できない言語のための書き方
(DOM APIはJavaScriptだけの仕様ではないことに注意)
引数に関数を渡せないから、代わりに特別なメソッドを用意したオブジェクトを渡す
擬似言語で書くならば、こんな使い方を想定した仕様
class MyHandler implements Handler {
constructor(data) {
this.data = data
}
override handleEvent() {
console.log(this.data.name)
}
}
var handler = new MyHandler({name: 'my name'})
document.querySelector('.jscBtn').addEventListener('click', handler, false);
2018/03/21(水) 22:57:44.39ID:???
>>414
逆にイベントハンドラで使いたい変数の中身を
addEventListener()後の処理で動的に変えたいとかもありうるわけで
そうすると414の書き方だと固定になるし変数あてても拘束されるのでは
あれはダメ、これはダメ、~~べき、って断定し過ぎじゃね?
逆にイベントハンドラで使いたい変数の中身を
addEventListener()後の処理で動的に変えたいとかもありうるわけで
そうすると414の書き方だと固定になるし変数あてても拘束されるのでは
あれはダメ、これはダメ、~~べき、って断定し過ぎじゃね?
418412
2018/03/21(水) 22:59:28.65ID:???2018/03/21(水) 23:41:10.48ID:???
そもそもイベントハンドラに何かを渡したいという設計が間違っている
そんなことをするとただ複雑になっていくのみ
イベントはイベントでただの一連の処理を継続するトリガーと考えるべき
つまりPromiseだとかObservableを使って抽象化する
そんなことをするとただ複雑になっていくのみ
イベントはイベントでただの一連の処理を継続するトリガーと考えるべき
つまりPromiseだとかObservableを使って抽象化する
2018/03/22(木) 00:00:32.53ID:???
Observableと言えばリアクティブプログラミング
2018/03/22(木) 00:08:00.88ID:???
痛いな
2018/03/22(木) 00:41:22.47ID:???
バグのほとんどは、設計から生じる
素人は思いつきだけで、奇妙な設計をするから、バグる。
よく使われる・普遍的な、設計・デザインパターンじゃない
特に、素人が好きなのは、状態・外部に依存すること。
関数を抜けた後に、何かの状態を保存したがる。
これがダメ
理想的なのは、状態を持たない、関数型プログラミング
素人は思いつきだけで、奇妙な設計をするから、バグる。
よく使われる・普遍的な、設計・デザインパターンじゃない
特に、素人が好きなのは、状態・外部に依存すること。
関数を抜けた後に、何かの状態を保存したがる。
これがダメ
理想的なのは、状態を持たない、関数型プログラミング
2018/03/22(木) 00:48:51.45ID:???
2018/03/22(木) 01:00:39.21ID:???
jQuery使っておけ。多くのユースケースでベストな方法を用意してる
$('.jscBtn').on('click', {name: 'my name'}, function(event) {
console.log(event.data.name); // "my name"
});
$('.jscBtn').on('click', {name: 'my name'}, function(event) {
console.log(event.data.name); // "my name"
});
2018/03/22(木) 01:20:44.65ID:???
jqはないわ
2018/03/22(木) 01:34:40.93ID:???
2018/03/22(木) 01:44:08.33ID:???
しつけー自演だな。ライブラリスレじゃねーんだよボケ。
あらゆる質問についてそれ用のライブラリつかえばいいよってのは言語スレで出す回答じゃねーんだよボケ。
あらゆる質問についてそれ用のライブラリつかえばいいよってのは言語スレで出す回答じゃねーんだよボケ。
2018/03/22(木) 01:45:52.29ID:???
え?自演じゃないよ。
単にライブラリの話をしてるだけ
単にライブラリの話をしてるだけ
2018/03/22(木) 01:47:34.29ID:???
じゃあスレ違いだな。
ライブラリスレもjQueryスレもあるし。
ライブラリスレもjQueryスレもあるし。
2018/03/22(木) 01:49:39.96ID:???
ここでjQueryに関連する話が出たら、
そりゃここでもするよ
ここでブラウザの話がでたら
ブラウザの話するでしょ?
そりゃここでもするよ
ここでブラウザの話がでたら
ブラウザの話するでしょ?
2018/03/22(木) 01:51:53.64ID:???
自分で出しといて出たらじゃないだろ白々しい
2018/03/22(木) 01:53:59.42ID:???
"関連する話"だよw
2018/03/22(木) 01:57:47.42ID:???
>>417が気になるんだけど
これどっちが正しいの
これどっちが正しいの
2018/03/22(木) 02:01:36.70ID:???
JSで何らかのデータを生成しても、
JSはセキュリティ上ユーザのPC上にそれを「ファイルとして」データを保存することはできなくなってると理解しています。
でもダウンロードでファイルを保存できるのだから
JSで生成したデータを一旦サーバに送ってサーバ上でファイルにして
それをクライアント側で改めてダウンロードするようにすればファイルとしてデータを保存できるってことですか?
そこで質問なのですが
クライアント側でサーバを介せずに、ユーザスクリプトで生成したデータを
ダウンロードする操作を擬似的に行って
ファイルに保存することってできないのですか?
ーー
まだJSはじめて間もなくてものすごく初歩的で頓珍漢な質問かもしれませんが、
勘違いしてるとおもうとこあったらつっこんでくさい。
JSはセキュリティ上ユーザのPC上にそれを「ファイルとして」データを保存することはできなくなってると理解しています。
でもダウンロードでファイルを保存できるのだから
JSで生成したデータを一旦サーバに送ってサーバ上でファイルにして
それをクライアント側で改めてダウンロードするようにすればファイルとしてデータを保存できるってことですか?
そこで質問なのですが
クライアント側でサーバを介せずに、ユーザスクリプトで生成したデータを
ダウンロードする操作を擬似的に行って
ファイルに保存することってできないのですか?
ーー
まだJSはじめて間もなくてものすごく初歩的で頓珍漢な質問かもしれませんが、
勘違いしてるとおもうとこあったらつっこんでくさい。
2018/03/22(木) 02:04:55.48ID:???
2018/03/22(木) 02:18:49.41ID:???
>>433
どっちってどの話?
addEventListener()後の処理で動的に変えたいという話なら
こうすればいいわけで、別に何の問題もないよ
っていうかこの場合、dataをイベントハンドラに結びつける必要もないわけで
var data = {name: 'my name'}
var handler = (function(data) {
return function() {
data.name = 'your name'
}
}(data));
document.querySelector('.jscBtn').addEventListener('click', handler, false);
setTimeout(function() {
alert(data.name);
}, 5000)
セッションストレージやグローバル変数の話であれば、
この用途でそんなの使うとかありえないっていうのが正しい
>>417が言ってるのは徒歩1分の距離にあるコンビニに
車で行ってもいいでしょって言ってるレベル
どっちってどの話?
addEventListener()後の処理で動的に変えたいという話なら
こうすればいいわけで、別に何の問題もないよ
っていうかこの場合、dataをイベントハンドラに結びつける必要もないわけで
var data = {name: 'my name'}
var handler = (function(data) {
return function() {
data.name = 'your name'
}
}(data));
document.querySelector('.jscBtn').addEventListener('click', handler, false);
setTimeout(function() {
alert(data.name);
}, 5000)
セッションストレージやグローバル変数の話であれば、
この用途でそんなの使うとかありえないっていうのが正しい
>>417が言ってるのは徒歩1分の距離にあるコンビニに
車で行ってもいいでしょって言ってるレベル
2018/03/22(木) 02:38:16.49ID:???
それはセッションストレージよりかなり軽いってこと?
2018/03/22(木) 02:39:39.15ID:???
>>436
こういうことだな
var originalData = 'hoge';
// case2: var originalData = ['hoge'];
// case3: var originalData = {'name':'hoge'};
var handler = (function(recievedData) {
return function() {
console.log(recievedData); // 'hoge'
// case2: console.log(recievedData[0]); // 'fuga'
// case3: console.log(recievedData.name); // 'fuga'
}
}(originalData));
document.querySelector('.jscBtn').addEventListener('click', handler, false);
originalData = 'fuga';
// case2: originalData[0] = 'fuga';
// case3: originalData.name = 'fuga';
値渡しされる内容の変数だと、外部の変更を受けず、
逆に言えば外部での変更を反映させたいと思っても反映させられない
// イベントハンドラ内部のconsole.logを再代入にしてどうすんだ
参照渡しされる内容の変数だと、その変数を参照できれば変更されうる
MyApp.somePropertyみたいな
グローバル変数を使うかどうかは単にその蓋然性の多寡に過ぎない
ついでにstorageは正直ちょっとやそっとじゃ体感できない差だと思うが
こういうことだな
var originalData = 'hoge';
// case2: var originalData = ['hoge'];
// case3: var originalData = {'name':'hoge'};
var handler = (function(recievedData) {
return function() {
console.log(recievedData); // 'hoge'
// case2: console.log(recievedData[0]); // 'fuga'
// case3: console.log(recievedData.name); // 'fuga'
}
}(originalData));
document.querySelector('.jscBtn').addEventListener('click', handler, false);
originalData = 'fuga';
// case2: originalData[0] = 'fuga';
// case3: originalData.name = 'fuga';
値渡しされる内容の変数だと、外部の変更を受けず、
逆に言えば外部での変更を反映させたいと思っても反映させられない
// イベントハンドラ内部のconsole.logを再代入にしてどうすんだ
参照渡しされる内容の変数だと、その変数を参照できれば変更されうる
MyApp.somePropertyみたいな
グローバル変数を使うかどうかは単にその蓋然性の多寡に過ぎない
ついでにstorageは正直ちょっとやそっとじゃ体感できない差だと思うが
2018/03/22(木) 02:41:53.98ID:???
というか、質問者が変数って言ってるんだから
オブジェクトそのものをそのまま渡すqiitaのURLのコメの条件を採用する必要がない
オブジェクトそのものをそのまま渡すqiitaのURLのコメの条件を採用する必要がない
2018/03/22(木) 02:45:04.95ID:???
> ついでにstorageは正直ちょっとやそっとじゃ体感できない差だと思うが
速度が問題なんじゃない。適してない道具を使うなということ
セッションストレージは情報を永続化させるもので
用途に有ってない道具を無理やり使うと想定外のバグを引き起こす
速度が問題なんじゃない。適してない道具を使うなということ
セッションストレージは情報を永続化させるもので
用途に有ってない道具を無理やり使うと想定外のバグを引き起こす
2018/03/22(木) 02:46:33.19ID:???
2018/03/22(木) 02:53:36.04ID:???
重いっていうのは速度だけの話じゃない
無駄全般の話しだ
メモリも食うしストレージも食う
読み書きするコードも無駄だろう
無駄全般の話しだ
メモリも食うしストレージも食う
読み書きするコードも無駄だろう
2018/03/22(木) 03:53:45.23ID:???
日本語の使い方がおかしい
わざと曖昧な言葉使ってののか
適当なのかしらんけど
プログラミング言語以前に日本語からちゃんとしたほうがいいわ
セッションストレージが永続ってのもしっくりこんし
重いの範囲も広く使いすぎ
わざと曖昧な言葉使ってののか
適当なのかしらんけど
プログラミング言語以前に日本語からちゃんとしたほうがいいわ
セッションストレージが永続ってのもしっくりこんし
重いの範囲も広く使いすぎ
2018/03/22(木) 04:45:30.79ID:???
言うに事欠いてどこにケチ付けてんだワロタw
計算機科学用語のpersistantの訳語だろうがw
もしかして永久に続かないからおかしいもん!とか思ったのかな?アホスwww
訳語が日本語としておかしいのは「仮想」とか「束縛」とかもそうだと思うが。数学用語もそう。
ある文脈で通じるお約束でそもそものそこにケチ付けてもしょうがないだろ。
どうしてもやりたいなら言語学板ででもやれば?w
計算機科学用語のpersistantの訳語だろうがw
もしかして永久に続かないからおかしいもん!とか思ったのかな?アホスwww
訳語が日本語としておかしいのは「仮想」とか「束縛」とかもそうだと思うが。数学用語もそう。
ある文脈で通じるお約束でそもそものそこにケチ付けてもしょうがないだろ。
どうしてもやりたいなら言語学板ででもやれば?w
2018/03/22(木) 05:20:51.61ID:???
localStorageはsessionStorageと比べて
永続性がある、永続的、ということはある
永続性がある、永続的、ということはある
2018/03/22(木) 05:22:28.69ID:???
本題スルーすごいですね
2018/03/22(木) 05:26:48.29ID:???
ソフトウェアエンジニアリングの世界で
永続とか重いとか普通に使うだろ初心者かよ
永続とか重いとか普通に使うだろ初心者かよ
2018/03/22(木) 05:39:22.72ID:???
persistentはIT分野(Web関係では特に)
どっちかっていうと「持続的」じゃないか?
切るまでは持続するってことでpersistent connectionとか
永続はどちらかといえばpermanentな気がする
どっちかっていうと「持続的」じゃないか?
切るまでは持続するってことでpersistent connectionとか
永続はどちらかといえばpermanentな気がする
2018/03/22(木) 05:45:50.98ID:???
>>448
持続ではなく永続であってる
持続ではなく永続であってる
2018/03/22(木) 06:01:44.27ID:???
本題スルーで有耶無耶で草
2018/03/22(木) 06:02:42.27ID:???
また初心者のせいで言葉遊びに興じてるのか
2018/03/22(木) 06:42:32.58ID:???
localStorage使うならMap用意するとか共有スコープに変数取るとかでも良いじゃん
そういうパターンと、リスナセット時に指定するパターンと、
同期的に書いてそのままのスコープで変数を使っていくパターンの3つがある
どれを使うかは状況によるし、お好みで
そういうパターンと、リスナセット時に指定するパターンと、
同期的に書いてそのままのスコープで変数を使っていくパターンの3つがある
どれを使うかは状況によるし、お好みで
2018/03/22(木) 06:50:07.99ID:???
ストレージ用語だと
Persistent(永続、ただし永遠に残るわけではなく、消えて欲しくないデータということ)
<->
Temporary(一時、ただし即座に消えるわけではなく、消えても良いデータということ)
Persistent(永続、ただし永遠に残るわけではなく、消えて欲しくないデータということ)
<->
Temporary(一時、ただし即座に消えるわけではなく、消えても良いデータということ)
2018/03/22(木) 07:08:57.75ID:???
2018/03/22(木) 10:38:38.26ID:???
質問者はイベントリスナーに変数を渡したいとしか言ってない
勝手にそれ以上のことをしようとするな
勝手にそれ以上のことをしようとするな
2018/03/22(木) 11:49:13.24ID:???
相手の空気読めずに仕事できないやつ多そう
2018/03/22(木) 12:34:42.16ID:???
空気を読まないと行けないようなつまらん非効率な職場が理想なんか?
ただ単に上司の指示管理能力不足なだけだろ
ただ単に上司の指示管理能力不足なだけだろ
2018/03/22(木) 12:42:34.97ID:???
>>455
正直その時点でわけ分からんよね
正直その時点でわけ分からんよね
2018/03/22(木) 13:33:12.62ID:???
>>434
コレお願いします。
コレお願いします。
2018/03/22(木) 13:38:33.90ID:???
>>459
だからあいつが書くから待てっていってるだろ
だからあいつが書くから待てっていってるだろ
2018/03/22(木) 14:45:14.40ID:???
>>460
アイツは今忙しいのでおまえが答えてやれよ
アイツは今忙しいのでおまえが答えてやれよ
2018/03/22(木) 14:53:26.09ID:???
2018/03/22(木) 18:24:39.12ID:???
cssでdiv要素に {draggable: ture}追加して
dragendのイベントが発生した時に発火するイベントリスナーをつくって
要素を動かせるようにしたんだが動かんのだけど?
動かんと言うかドラッグできないんだが
時々まれに何かの拍子でドラッグできたりするんだが
またできなくなる。
なにこれ?
ふざけてんの?
dragendのイベントが発生した時に発火するイベントリスナーをつくって
要素を動かせるようにしたんだが動かんのだけど?
動かんと言うかドラッグできないんだが
時々まれに何かの拍子でドラッグできたりするんだが
またできなくなる。
なにこれ?
ふざけてんの?
2018/03/22(木) 19:09:16.69ID:???
divにcssで背景画像か背景色を明示指定してみたら?
2018/03/22(木) 21:48:04.89ID:???
まぁ、試しにやってみただけで他にやりようはあるんだけど
draggableつかって変わったやり方ためしてみたかっただけ。
draggableつかって変わったやり方ためしてみたかっただけ。
2018/03/22(木) 23:30:27.18ID:???
draggable なウィジェットなんて、jQueryUI でも使えば?
467Name_Not_Found
2018/03/23(金) 07:42:38.22ID:7fKruZ4F var sato = "hello";
function tanaka(v){return v;}
とある場合
tanaka(sato);←"hello"ではなく変数名"sato"が返って来るようにしたい
javascriptで使われた変数名を取得する方法ってありますか?
tanaka(sato,"sato");のような方法ではなく田中関数で変数名取得したいです
function tanaka(v){return v;}
とある場合
tanaka(sato);←"hello"ではなく変数名"sato"が返って来るようにしたい
javascriptで使われた変数名を取得する方法ってありますか?
tanaka(sato,"sato");のような方法ではなく田中関数で変数名取得したいです
2018/03/23(金) 12:33:37.94ID:???
そのような田中関数があったとして田中(1) とか田中({}) は何を返すことになるのかな
2018/03/23(金) 12:34:54.99ID:???
それは無理な話
「"hello"」は家では「sato」というあだ名で呼ばれていて、学校では「v」というあだ名で呼ばれているということだから
「"hello"」は家では「sato」というあだ名で呼ばれていて、学校では「v」というあだ名で呼ばれているということだから
2018/03/23(金) 12:39:03.48ID:???
with-proxyを使えば可能かもしれない
value-proxyが無いと完璧な振る舞いはできないが
value-proxyが無いと完璧な振る舞いはできないが
2018/03/23(金) 12:41:58.15ID:???
2018/03/23(金) 12:58:44.08ID:???
Object.keysとってwindowを走査すれば見つかるとは思うけど
文字列のペアが欲しいなら最初から連想配列として扱うべき
文字列のペアが欲しいなら最初から連想配列として扱うべき
473Name_Not_Found
2018/03/23(金) 15:23:21.58ID:dCiy5Oyf >>467
const sato = () => { return 'hello' };
function tanaka(v){
console.log(v.name); //=>sato
console.log(v()); //=> hello
}
tanaka(sato);
const sato = () => { return 'hello' };
function tanaka(v){
console.log(v.name); //=>sato
console.log(v()); //=> hello
}
tanaka(sato);
2018/03/23(金) 15:27:17.68ID:???
前提をイジるという高度なテク。
社会ではよく使う。
社会ではよく使う。
475Name_Not_Found
2018/03/23(金) 21:48:25.89ID:clqmqM/e >>471
kwsk
kwsk
2018/03/24(土) 05:49:05.09ID:???
エスパーの俺は
変数名取得なんてしないでスタックトレースを手動で出せばいいじゃないかと提案
変数名取得なんてしないでスタックトレースを手動で出せばいいじゃないかと提案
2018/03/24(土) 13:48:47.82ID:???
拡張機能作ってるんだけど(つまり他人が作ったサイト)
同じドメインの別のページの情報をページを移動せずに取得することって出来る?
同じドメインの別のページの情報をページを移動せずに取得することって出来る?
2018/03/24(土) 16:10:54.45ID:???
fetchかXMLHttpRequestを使えばいいよ
ブラウザ拡張機能なら大体は同等の拡張用APIもある
ブラウザ拡張機能なら大体は同等の拡張用APIもある
2018/03/24(土) 21:03:35.91ID:???
各種設定を持たせるオブジェクトって、
今でも普通のオブジェクトでいいのですか?
それともMapオブジェクトの方がいいのでしょうか?
今でも普通のオブジェクトでいいのですか?
それともMapオブジェクトの方がいいのでしょうか?
2018/03/24(土) 21:16:35.79ID:???
普通にオブジェクトで良いんでない、JSONと相性良いし
使い勝手に困る様ならそれから変えても遅くはない
使い勝手に困る様ならそれから変えても遅くはない
2018/03/24(土) 21:16:58.99ID:???
>>479
自分で考えろハゲ!
自分で考えろハゲ!
2018/03/24(土) 21:18:48.55ID:???
2018/03/24(土) 21:19:02.75ID:???
特に理由がなければ普通のオブジェクトで良い
Mapの方が厳密な実装だが、
書き方が面倒くさい
リテラルぐらい用意しろと
Mapの方が厳密な実装だが、
書き方が面倒くさい
リテラルぐらい用意しろと
2018/03/24(土) 21:20:26.93ID:???
2018/03/24(土) 21:20:45.03ID:???
2018/03/24(土) 21:25:01.60ID:???
せめてこういう使い方ができないとダメだな
var map = new Map({a: 1, b: 2});
console.log(map["a"]);
map["a"]++;
map["a"] = 2;
var map = new Map({a: 1, b: 2});
console.log(map["a"]);
map["a"]++;
map["a"] = 2;
2018/03/24(土) 21:34:28.79ID:???
お手軽重複除去のために産まれてすぐ殺されるSetさんよりマシ。
var arr = ['a', 'b', 'b', 'c', 'c', 'c'];
var arrDistinct = [...new Set(arr)];
var arr = ['a', 'b', 'b', 'c', 'c', 'c'];
var arrDistinct = [...new Set(arr)];
2018/03/24(土) 21:57:25.36ID:???
剃る髪も無い開発者って・・・
2018/03/24(土) 22:23:09.19ID:???
>>481
フサです
フサです
2018/03/24(土) 22:24:20.35ID:???
setは集合mapは写像
数学的周辺ではよく使う
かもしれない
数学的周辺ではよく使う
かもしれない
2018/03/24(土) 22:28:34.01ID:???
数学者「set(集合)はどういう時に使うものでしょうか?」
プログラマ「はい!重複除去のためです!UNIQする時に使います!」
数学者「・・・」
プログラマ「はい!重複除去のためです!UNIQする時に使います!」
数学者「・・・」
2018/03/24(土) 22:29:01.21ID:???
mapって何のためにあるん?
オブジェクトじゃダメなん?
オブジェクトじゃダメなん?
2018/03/24(土) 22:31:25.31ID:???
キーにオブジェクト(っていうかポインタ?)が使える連想配列
って感じ?
って感じ?
2018/03/24(土) 22:34:04.96ID:???
var key = 'a';
// var key = '__proto__';
var obj = {};
obj[key] = obj[key] ? obj[key] + 1 : 1;
文書に出現する、単語の数を数える場合、
その単語が未登録なら1、すでに登録されているなら、1増やす
こういう場合に、たまたま、__proto__ という単語を登録しようとするとバグル。
obj.__proto__ を上書きするから
var wordsMap : Map<String, Int> = new Map();
wordsMap["a"] = 1;
trace(wordsMap["a"]);
上は、Haxe のMap のコードだが、ES4 変換後のコードでは、
wordsMap["$" + key]
のように、キーの前に、$ 文字を連結している
他にも、
var obj = {x : {}};
のように、オブジェクト内のオブジェクトを使う事もできるが、
この方法でも、__proto__ ではバグル
// var key = '__proto__';
var obj = {};
obj[key] = obj[key] ? obj[key] + 1 : 1;
文書に出現する、単語の数を数える場合、
その単語が未登録なら1、すでに登録されているなら、1増やす
こういう場合に、たまたま、__proto__ という単語を登録しようとするとバグル。
obj.__proto__ を上書きするから
var wordsMap : Map<String, Int> = new Map();
wordsMap["a"] = 1;
trace(wordsMap["a"]);
上は、Haxe のMap のコードだが、ES4 変換後のコードでは、
wordsMap["$" + key]
のように、キーの前に、$ 文字を連結している
他にも、
var obj = {x : {}};
のように、オブジェクト内のオブジェクトを使う事もできるが、
この方法でも、__proto__ ではバグル
2018/03/24(土) 22:35:28.82ID:???
javascriptに楽に書けて簡単にループ扱えて便利な連想配列が無いのが悪い
2018/03/24(土) 22:43:01.41ID:???
2018/03/25(日) 01:02:14.40ID:???
2018/03/25(日) 03:09:09.02ID:???
2018/03/25(日) 03:58:24.67ID:???
>>498
https://lodash.com/docs/4.17.5#forIn
var obj = {a: 1, b:2, c:3};
_.forIn(obj, function(v,k) {
foo(v*3, k);
})
または
_.forIn(obj, (v,k) => foo(v*3, k))
https://lodash.com/docs/4.17.5#forIn
var obj = {a: 1, b:2, c:3};
_.forIn(obj, function(v,k) {
foo(v*3, k);
})
または
_.forIn(obj, (v,k) => foo(v*3, k))
2018/03/25(日) 04:24:51.46ID:???
ライブラリで定義された関数使っとるだけやんけワロタw
「javascriptでは出来ませんごめんなさい」って言うのがよっぽど悔しいんだねwwwww
「javascriptでは出来ませんごめんなさい」って言うのがよっぽど悔しいんだねwwwww
2018/03/25(日) 04:24:54.09ID:???
>>499
わざわざfunction()にしなきゃいけないとか変な仕様
わざわざfunction()にしなきゃいけないとか変な仕様
2018/03/25(日) 04:38:57.47ID:???
言語構造の問題でそっくりそのままなんて不可能なんだから
そっくりそのままは不可能と言えばいいのに
そっくりそのままは不可能と言えばいいのに
2018/03/25(日) 05:41:33.75ID:???
>>498
as構文がないから全く同じにはできないが、似たような書き方にはできる
const obj = {a:1, b:2, c:3};
for( const [k, v] of Object.entries(obj) ){
foo(v * 3, k);
}
const iterable = new Map([['a',1],['b',2],['c',3]]);
for( const [k, v] of iterable ){
foo(v * 3, k);
}
const array = [1, 2, 3];
array.forEach((v, k) => {
foo(v * 3, k);
});
as構文がないから全く同じにはできないが、似たような書き方にはできる
const obj = {a:1, b:2, c:3};
for( const [k, v] of Object.entries(obj) ){
foo(v * 3, k);
}
const iterable = new Map([['a',1],['b',2],['c',3]]);
for( const [k, v] of iterable ){
foo(v * 3, k);
}
const array = [1, 2, 3];
array.forEach((v, k) => {
foo(v * 3, k);
});
2018/03/25(日) 06:39:43.03ID:???
こういう時はMap使いやすいよね
2018/03/25(日) 07:24:14.18ID:???
ローカル変数でもconstを使う必要ありますか?
上書きをするかしないかいちいち考えるよりも
全部letにした方が面倒くさくなくていいと思います
使われる範囲が広い変数の場合にはconstにすることにも意味があると思いますが
上書きをするかしないかいちいち考えるよりも
全部letにした方が面倒くさくなくていいと思います
使われる範囲が広い変数の場合にはconstにすることにも意味があると思いますが
2018/03/25(日) 07:34:11.56ID:???
2018/03/25(日) 08:29:41.17ID:???
基本全てをconstにしておいて変更の可能性をletで示す
ってのが理想論だけどまあvarじゃなけりゃ良いやって感じ
ってのが理想論だけどまあvarじゃなけりゃ良いやって感じ
2018/03/25(日) 08:49:21.73ID:???
構文は人間様が読めれば良いだけ
2018/03/25(日) 09:19:39.63ID:???
全部varでなんか問題あります?
2018/03/25(日) 10:32:11.22ID:???
大丈夫だ、問題ない
2018/03/25(日) 12:14:24.51ID:???
回答ありがとうございます
ふと思ったのですが、なるべく全部constになるようにするっていう方向もありますね
しかし非破壊的な関数を挟むと再代入が発生するので
破壊的な関数を用意するという方向で。
メソッドチェーンで繋げてコードがすっきりというメリットもありますし
ふと思ったのですが、なるべく全部constになるようにするっていう方向もありますね
しかし非破壊的な関数を挟むと再代入が発生するので
破壊的な関数を用意するという方向で。
メソッドチェーンで繋げてコードがすっきりというメリットもありますし
2018/03/25(日) 12:44:28.54ID:???
>>505
> 上書きをするかしないかいちいち考えるよりも
> 全部letにした方が面倒くさくなくていいと思います
むしろ、上書きされると、この変数はどこで変更されているんだろう?って
考えないといけなくなるので、constの方が良い
もうこれ以上変更されないわけだから
> 上書きをするかしないかいちいち考えるよりも
> 全部letにした方が面倒くさくなくていいと思います
むしろ、上書きされると、この変数はどこで変更されているんだろう?って
考えないといけなくなるので、constの方が良い
もうこれ以上変更されないわけだから
2018/03/25(日) 12:48:26.95ID:???
>>503
なるほど、lodashのentries(toPairs)はそう使うんですね
const obj = {a:1, b:2, c:3};
for( const [k, v] of _.toPairs(obj) ){
foo(v * 3, k);
}
なるほど、lodashのentries(toPairs)はそう使うんですね
const obj = {a:1, b:2, c:3};
for( const [k, v] of _.toPairs(obj) ){
foo(v * 3, k);
}
2018/03/25(日) 12:50:56.22ID:???
>>508
> 構文は人間様が読めれば良いだけ
でもそれが重要なんだよな。
機械であれば変数名なんて適当でも良い
じゃあ機械様が読めれば良いのか?というと違う
コードは人間も読み書きするものなんだから
人間様が読めなければいけない
機械に合わせるのではなく人間に合わせるべき
> 構文は人間様が読めれば良いだけ
でもそれが重要なんだよな。
機械であれば変数名なんて適当でも良い
じゃあ機械様が読めれば良いのか?というと違う
コードは人間も読み書きするものなんだから
人間様が読めなければいけない
機械に合わせるのではなく人間に合わせるべき
2018/03/25(日) 13:56:35.83ID:???
lodashのwithout関数で
除外するものを配列として与えたいのですが、
それは出来ないのでしょうか?
除外するものを配列として与えたいのですが、
それは出来ないのでしょうか?
2018/03/25(日) 13:59:55.88ID:???
>>515
あんたがほしいのは differenceじゃないの?
あんたがほしいのは differenceじゃないの?
2018/03/25(日) 14:00:55.32ID:???
まあ without でも スプレッド演算子使えばできるけど
2018/03/25(日) 14:12:18.96ID:???
2018/03/25(日) 16:56:58.32ID:???
固有とか列挙可とかでうっかり変なバグ出したくないから
ループさせるコレクションは配列使ってるわ
それでもライブオブジェクトとかいう余計なお世話でハマったりするけど
ループさせるコレクションは配列使ってるわ
それでもライブオブジェクトとかいう余計なお世話でハマったりするけど
2018/03/25(日) 17:07:02.62ID:???
>>519
それ日頃からバグになりやすいコードを書いてるってことじゃね?
バグになりにくい(?)データ型を使うんじゃなくて
バグになりにくいコードを書いたほうが良いよ
バグになりにくいという観点で不適切なデータ型を使うと
そのせいで本来ならやらなくてよかったコードが必要になるので
余計バグが増える
それ日頃からバグになりやすいコードを書いてるってことじゃね?
バグになりにくい(?)データ型を使うんじゃなくて
バグになりにくいコードを書いたほうが良いよ
バグになりにくいという観点で不適切なデータ型を使うと
そのせいで本来ならやらなくてよかったコードが必要になるので
余計バグが増える
2018/03/25(日) 17:15:45.36ID:???
>>520
フワッとした中身ないアドバイス()いらん
フワッとした中身ないアドバイス()いらん
522Name_Not_Found
2018/03/25(日) 17:19:11.80ID:g4s2nLcu >>521
ふわっとしてるのは、バグになる理由とか書いてないからだよ
ライブオブジェクトでバグとかもさ理由書いてないし
(どうせ要素数でループとかしてるからだろうけど、
それを書いてないからふわっとせざるを得ない)
ふわっとしてるのは、バグになる理由とか書いてないからだよ
ライブオブジェクトでバグとかもさ理由書いてないし
(どうせ要素数でループとかしてるからだろうけど、
それを書いてないからふわっとせざるを得ない)
2018/03/25(日) 17:25:32.28ID:???
一般論としてコードというのは一番手を抜いた状態が
最善な方法になっていないといけない
ましてや手を抜くとバグになる状態っていうのは一番やばい
もしそんな状態が有るとするならまずそれを解決すべき
最善な方法になっていないといけない
ましてや手を抜くとバグになる状態っていうのは一番やばい
もしそんな状態が有るとするならまずそれを解決すべき
524Name_Not_Found
2018/03/25(日) 18:07:49.37ID:sD1JXPIO pjaxを試してるんだけど
Firefoxでリロードしたとき、挙動おかしくならない?
http://develop.syake-labo.com/pjax/
こういうデモとかで、途中でリロードしたら戻るボタン押してもページが変わらなくなる。
Chromeなら大丈夫なんだけど。
どうすればいいんだろう。
Firefoxでリロードしたとき、挙動おかしくならない?
http://develop.syake-labo.com/pjax/
こういうデモとかで、途中でリロードしたら戻るボタン押してもページが変わらなくなる。
Chromeなら大丈夫なんだけど。
どうすればいいんだろう。
525Name_Not_Found
2018/03/25(日) 18:10:05.60ID:sD1JXPIO ↑追記
Firefoxでも更新ボタンだったら大丈夫だった。
アドレスバーでEnter押した時におかしくなる。
Firefoxでも更新ボタンだったら大丈夫だった。
アドレスバーでEnter押した時におかしくなる。
2018/03/25(日) 19:55:36.12ID:???
2018/03/25(日) 21:38:16.18ID:???
2018/03/25(日) 23:01:22.09ID:???
lodashで、_([1,2,3]みたいな感じのオブジェクト指向スタイルにしたものを
生の配列に戻すにはどうすればいいのでしょうか?
toArrayとかそれっぽいと思ったのですが、出てくるのはオブジェクトでした
生の配列に戻すにはどうすればいいのでしょうか?
toArrayとかそれっぽいと思ったのですが、出てくるのはオブジェクトでした
2018/03/25(日) 23:17:03.25ID:???
>>522
こんなばか久々にみた
こんなばか久々にみた
2018/03/25(日) 23:23:46.28ID:???
2018/03/25(日) 23:53:50.25ID:???
>>528
value()だよ
value()だよ
2018/03/25(日) 23:58:11.20ID:???
2018/03/26(月) 00:03:03.77ID:???
>>526
「バグになりやすいコード」で検索して出てきた一番目
> これに対する私の見解であるが、一言で言ってしまえば、
> 「無理をしない」である。
> あらゆることについて無理をしない。
> 無理をせずに自明なコードだけ書いていればバグの入る余地がなくなる。
> Haskellをやりだしてから細かいことを書かなくなった
> (書きたくなくなった)。やりたいことを書けばいいのである。
> これはある意味で富豪的プログラミングに通じるのであるが、
> 今回の話は富豪的というところにとどまらない。
> 徹底的に首尾一貫して手を抜けというのである。
> 逆に言うと、手を抜くために思慮深くなれ、ということだ。
> プログラムを書く前に、ちょっと待った。
> ゆっくりと考えを巡らせてもっと簡素にかけないかを考える。
> ここで言う簡素というのはプログラムの長さではない。
> コード化する際に、いかに考える余地が入らないかである。
「バグになりやすいコード」で検索して出てきた一番目
> これに対する私の見解であるが、一言で言ってしまえば、
> 「無理をしない」である。
> あらゆることについて無理をしない。
> 無理をせずに自明なコードだけ書いていればバグの入る余地がなくなる。
> Haskellをやりだしてから細かいことを書かなくなった
> (書きたくなくなった)。やりたいことを書けばいいのである。
> これはある意味で富豪的プログラミングに通じるのであるが、
> 今回の話は富豪的というところにとどまらない。
> 徹底的に首尾一貫して手を抜けというのである。
> 逆に言うと、手を抜くために思慮深くなれ、ということだ。
> プログラムを書く前に、ちょっと待った。
> ゆっくりと考えを巡らせてもっと簡素にかけないかを考える。
> ここで言う簡素というのはプログラムの長さではない。
> コード化する際に、いかに考える余地が入らないかである。
2018/03/26(月) 00:26:18.00ID:???
一般論とグーグル検索一番目が一致する概念ってこと?
2018/03/26(月) 00:31:30.31ID:???
自分が「バグになりやすいコード」で検索して出てきた一番目
http://tech.nikkeibp.co.jp/it/free/ITPro/OPINION/20020628/1/
グーグルトップは
一般じゃなかった模様
http://tech.nikkeibp.co.jp/it/free/ITPro/OPINION/20020628/1/
グーグルトップは
一般じゃなかった模様
2018/03/26(月) 00:33:43.39ID:???
グーグルは検索履歴によって表示する結果をかえるから
一番目に出てくるのは検索者の傾向をふまえた主観といってもかごんではない。
一番目に出てくるのは検索者の傾向をふまえた主観といってもかごんではない。
2018/03/26(月) 00:35:47.86ID:???
>>536
はい、なのでシークレットモードで検索した
一番目の結果を貼りました。それが>>533です。
リンク貼り忘れていましたねw
バグのないプログラムの書き方 - 純粋関数型雑記帳
http://d.hatena.ne.jp/tanakh/20050306
はい、なのでシークレットモードで検索した
一番目の結果を貼りました。それが>>533です。
リンク貼り忘れていましたねw
バグのないプログラムの書き方 - 純粋関数型雑記帳
http://d.hatena.ne.jp/tanakh/20050306
2018/03/26(月) 00:36:39.95ID:???
2018/03/26(月) 00:37:34.06ID:???
でさー、グーグルトップ=一般論って理屈はどっからでてきたの?
2018/03/26(月) 00:40:06.25ID:???
逆、Googleトップだから一般論なんじゃなくて
一般論だからGoogleトップに出てきた
一般論だからGoogleトップに出てきた
2018/03/26(月) 00:42:39.40ID:???
2018/03/26(月) 00:45:27.64ID:???
一般論の定義と
グーグルトップのでてくるメカニズム
をそれぞれせつめしてくれ
グーグルトップのでてくるメカニズム
をそれぞれせつめしてくれ
2018/03/26(月) 00:46:11.11ID:???
俺も ⇛なんてつかってないが?
2018/03/26(月) 00:48:18.41ID:???
オブジェクトの分割代入で、
キーとは別の変数に代入することは出来ないのでしょうか?
const {width,height} = {width:100,height:100};
これが普通ですが
const {a,b} = {width:100,height:100};
こんな感じに別の名前の変数に代入したいのです
キーとは別の変数に代入することは出来ないのでしょうか?
const {width,height} = {width:100,height:100};
これが普通ですが
const {a,b} = {width:100,height:100};
こんな感じに別の名前の変数に代入したいのです
2018/03/26(月) 00:48:27.62ID:???
>>542
一般論の定義なんてものはない。数学じゃないんだからさw
こういう場合は一般論の意味を調べるべき
https://dictionary.goo.ne.jp/jn/13688/meaning/m0u/
出典:デジタル大辞泉(小学館)
ある特定の、または個々の具体的な事柄を考えないで、
広く全体を論じる議論。世間に広く認められると考えられる論。「一般論として述べる」
一般論の定義なんてものはない。数学じゃないんだからさw
こういう場合は一般論の意味を調べるべき
https://dictionary.goo.ne.jp/jn/13688/meaning/m0u/
出典:デジタル大辞泉(小学館)
ある特定の、または個々の具体的な事柄を考えないで、
広く全体を論じる議論。世間に広く認められると考えられる論。「一般論として述べる」
2018/03/26(月) 00:50:35.90ID:???
一般論というのはいいすぎでした。
検索で出てきたサイトでみたことをかきましたって認めればいいだけ。
検索で出てきたサイトでみたことをかきましたって認めればいいだけ。
2018/03/26(月) 00:51:47.36ID:???
>>545
グーグルトップにでてくるメカニズム 、は?
グーグルトップにでてくるメカニズム 、は?
2018/03/26(月) 00:54:14.95ID:???
>>547
ある単語(この場合は「バグになりやすいコード」)に
最も適切なものがヒットする。
そしてそのサイトでも同様のことが語られていた。
一般的なことだからこそ、このスレ以外のその他のサイトでも語られてる
ある単語(この場合は「バグになりやすいコード」)に
最も適切なものがヒットする。
そしてそのサイトでも同様のことが語られていた。
一般的なことだからこそ、このスレ以外のその他のサイトでも語られてる
2018/03/26(月) 00:55:55.47ID:???
別にGoogleトップであることは何も関係ないんだよ。
一般論の意味より、世間に広く認められると考えられる論なんだから
それが色んな場所で使われていることを証明すればいい
で簡単に見つかったサイトでも論じられていた
一般論の意味より、世間に広く認められると考えられる論なんだから
それが色んな場所で使われていることを証明すればいい
で簡単に見つかったサイトでも論じられていた
2018/03/26(月) 01:08:52.08ID:???
>>548
ある単語(この場合は「バグになりやすいコード」)に
最も適切なものがヒットする。
はいうそw
一般論=グーグルトップはどう考えても結びつきませんw
一般論であることを示したいなら他の論拠を出さないと無意味
ある単語(この場合は「バグになりやすいコード」)に
最も適切なものがヒットする。
はいうそw
一般論=グーグルトップはどう考えても結びつきませんw
一般論であることを示したいなら他の論拠を出さないと無意味
2018/03/26(月) 01:10:34.14ID:???
2018/03/26(月) 01:17:44.66ID:???
533を読んでみたけど
難解な処理を書かない、読んですぐ意図がわかるコードを書く、
遠くで宣言された変数の代入・再利用などわかりづらいことをしない、
そうすればバグが目に見えて減ると思う、
と、こういう主張だった
全然違くね?使ってる単語が似てるっぽいURLを後付で見つけてきただけじゃね?
難解な処理を書かない、読んですぐ意図がわかるコードを書く、
遠くで宣言された変数の代入・再利用などわかりづらいことをしない、
そうすればバグが目に見えて減ると思う、
と、こういう主張だった
全然違くね?使ってる単語が似てるっぽいURLを後付で見つけてきただけじゃね?
2018/03/26(月) 01:21:38.74ID:???
2018/03/26(月) 01:46:51.52ID:???
>>552
いや、あってるよ?
だから俺は疑問なんだ。
>>519がなんで固有とか列挙可で変なバグを出すのか?
ライブオブジェクトで変なバグを出すのか?
俺はここ数年(十年超えるかもね)そんなことでバグを出したことはない
かと言って、ぜったいにバグを見逃ししないぞと気を張って作業してるわけじゃない
俺のコーディングスタイルは最小のコード記述量で書くこと
書く量が少なければそこに入るバグも最小になる
もちろん難解な処理なんてないし、意図が変わるコード
遠くで宣言する変数とか再代入もしない、まさにそのサイトで主張している通り
それで俺はそんなバグなんか起きてないのに、
>>519がそんなことでバグでハマるのはそもそもの書き方に
問題が有るんじゃないかってこと。
おそらく些細なバグが起きないように、毎回対策のためのコードを書いてるのが原因じゃないか?
俺は些細なバグが起きないように、コードを書かない状態で対策されてる状態にしている。
いや、あってるよ?
だから俺は疑問なんだ。
>>519がなんで固有とか列挙可で変なバグを出すのか?
ライブオブジェクトで変なバグを出すのか?
俺はここ数年(十年超えるかもね)そんなことでバグを出したことはない
かと言って、ぜったいにバグを見逃ししないぞと気を張って作業してるわけじゃない
俺のコーディングスタイルは最小のコード記述量で書くこと
書く量が少なければそこに入るバグも最小になる
もちろん難解な処理なんてないし、意図が変わるコード
遠くで宣言する変数とか再代入もしない、まさにそのサイトで主張している通り
それで俺はそんなバグなんか起きてないのに、
>>519がそんなことでバグでハマるのはそもそもの書き方に
問題が有るんじゃないかってこと。
おそらく些細なバグが起きないように、毎回対策のためのコードを書いてるのが原因じゃないか?
俺は些細なバグが起きないように、コードを書かない状態で対策されてる状態にしている。
2018/03/26(月) 01:47:34.82ID:???
× 意図が変わるコード
○ 意図がわかりにくいコード
○ 意図がわかりにくいコード
2018/03/26(月) 02:08:06.90ID:???
2018/03/26(月) 02:12:08.76ID:???
2018/03/26(月) 02:19:13.05ID:???
なんか伸びてるとおもってきたら
バカが暴れてるのか
バカが暴れてるのか
2018/03/26(月) 02:23:08.54ID:???
>>557
タイプ数って勘違いしたのかw
面倒くさいな
そりゃ横に長い行を短くするのに一時変数に入れたりはするよ
そういうことじゃなくて、実行行と言ったら良いか?
定義行(代入行)ではなく処理の数を減らすんだよ。
と言ったら関数の先まで数えて同じとか言いそうだなw
コードというのは汎用的な処理とビジネス固有の処理に分けることができる
コード全体から汎用的な処理を切り離すことで、ビジネス固有の処理を減らすんだよ
汎用的な処理っていうのは、他で十分テストされ、例えば他のプロジェクトとかでも使われ
仕様が大きく変化することも、互換性が壊れる形で変化したりもしない、安定しているコード
だから基本読み飛ばすことができる。
読み飛ばせる部分を多くして、ビジネス固有の処理をへらす。これがバグをでなくするための方法
>>519はそういう所を毎回書いてるからバグだしてるんじゃねーのって話
タイプ数って勘違いしたのかw
面倒くさいな
そりゃ横に長い行を短くするのに一時変数に入れたりはするよ
そういうことじゃなくて、実行行と言ったら良いか?
定義行(代入行)ではなく処理の数を減らすんだよ。
と言ったら関数の先まで数えて同じとか言いそうだなw
コードというのは汎用的な処理とビジネス固有の処理に分けることができる
コード全体から汎用的な処理を切り離すことで、ビジネス固有の処理を減らすんだよ
汎用的な処理っていうのは、他で十分テストされ、例えば他のプロジェクトとかでも使われ
仕様が大きく変化することも、互換性が壊れる形で変化したりもしない、安定しているコード
だから基本読み飛ばすことができる。
読み飛ばせる部分を多くして、ビジネス固有の処理をへらす。これがバグをでなくするための方法
>>519はそういう所を毎回書いてるからバグだしてるんじゃねーのって話
2018/03/26(月) 02:25:51.73ID:???
書けば書くほどボロが出る
その口でこうすればバグが最小になると言う
その口でこうすればバグが最小になると言う
2018/03/26(月) 02:29:40.88ID:???
2018/03/26(月) 02:35:27.91ID:???
ライブなコレクションってgetElementsByClassName()の戻り値とかでしょ
ループに使うのがforでもfor inでもかかわりなく
ループの最初で別の変数に移して参照を持っておかないと
処理中に対象要素がなくなったら問題が出る
そういうもんじゃないの?
ループに使うのがforでもfor inでもかかわりなく
ループの最初で別の変数に移して参照を持っておかないと
処理中に対象要素がなくなったら問題が出る
そういうもんじゃないの?
2018/03/26(月) 02:41:43.05ID:???
2018/03/26(月) 02:46:31.97ID:???
仮に「最小のコード記述量=バグが最小になる」が
「コード分離して使い回せば記述量が減る」という意図だったとして
コードを分離できる状況かどうかや抽象性の設定などの問題もおいておくとして
しかしそれでもコード分離の話は>>537のURLには出てきていないな
「コード分離して使い回せば記述量が減る」という意図だったとして
コードを分離できる状況かどうかや抽象性の設定などの問題もおいておくとして
しかしそれでもコード分離の話は>>537のURLには出てきていないな
2018/03/26(月) 02:49:40.07ID:???
2018/03/26(月) 02:50:52.41ID:???
>>537のURLの趣旨はまとめるとこういうこと
「(速度やリソース消費など難が多少あっても)やりたいことをストレートに書けばバグが出ない」
富豪的プログラミングへの言及や神経を使うポインタを避ける
どの辺が「まさにそのサイトで主張している通り」なんですか
「(速度やリソース消費など難が多少あっても)やりたいことをストレートに書けばバグが出ない」
富豪的プログラミングへの言及や神経を使うポインタを避ける
どの辺が「まさにそのサイトで主張している通り」なんですか
2018/03/26(月) 02:51:15.56ID:???
2018/03/26(月) 02:55:35.62ID:???
2018/03/26(月) 02:56:13.92ID:???
>>565
> ライブなコレクション使うときはあれをしてはいけないこれを書いてはダメ
> などと神経使わなきゃいけないのは使いづらい
> そういう意味では>>537のURLの人が言ってることと同じだと思うんだけど
そういうこと。
神経を使わずに適切なコードが書ける状態になってないのが問題という話
コード書く時に神経使っちゃダメだよ?レビューする方も神経使うだろ?
あれこれ考えて抜けがないよな?抜けがないよな?と何度も確認しなきゃ安心できないコードよりも、
ひと目見ただけで、このコードにバグはないと言い切れるコード、
逆にどうやればこのコードにバグを入れられるんだよ?みたいな方が良いに決まってるだろ?
> ライブなコレクション使うときはあれをしてはいけないこれを書いてはダメ
> などと神経使わなきゃいけないのは使いづらい
> そういう意味では>>537のURLの人が言ってることと同じだと思うんだけど
そういうこと。
神経を使わずに適切なコードが書ける状態になってないのが問題という話
コード書く時に神経使っちゃダメだよ?レビューする方も神経使うだろ?
あれこれ考えて抜けがないよな?抜けがないよな?と何度も確認しなきゃ安心できないコードよりも、
ひと目見ただけで、このコードにバグはないと言い切れるコード、
逆にどうやればこのコードにバグを入れられるんだよ?みたいな方が良いに決まってるだろ?
2018/03/26(月) 03:01:41.20ID:???
2018/03/26(月) 03:05:06.56ID:???
ライブコレクションでハマるパターンは以下のようなもの
1. ある条件の要素のコレクションを取得
2. 全要素をループ
3. 条件1に該当するものは、要素に対して処理を行う
4. 条件2に該当するものは、要素を削除する
5. 削除によって「全要素」の内容が変わってしまう
6. 2に戻る(「全要素」の中身が代わってしまってるのでバグになる)
これは以下のように書けば良い
1. ある条件の要素のコレクションを取得
2. 条件1に該当するものだけをフィルタして処理をする
3. 条件2に該当するものだけをフィルタして削除
シンプルになってバグではまることもない
1. ある条件の要素のコレクションを取得
2. 全要素をループ
3. 条件1に該当するものは、要素に対して処理を行う
4. 条件2に該当するものは、要素を削除する
5. 削除によって「全要素」の内容が変わってしまう
6. 2に戻る(「全要素」の中身が代わってしまってるのでバグになる)
これは以下のように書けば良い
1. ある条件の要素のコレクションを取得
2. 条件1に該当するものだけをフィルタして処理をする
3. 条件2に該当するものだけをフィルタして削除
シンプルになってバグではまることもない
2018/03/26(月) 03:06:12.96ID:???
2018/03/26(月) 03:14:29.94ID:???
2018/03/26(月) 03:14:36.76ID:???
2018/03/26(月) 03:17:57.09ID:???
2018/03/26(月) 03:29:28.19ID:???
>>575
君の話は、前提として
・順番を逆にすることができる
・各々の処理が相互に関係しない
という処理である場合のみ利用可能すなわち汎用性に乏しいのでは
静的な配列にしてしまえばまず問題がない
答えられるかというのは何をだ
君の話は、前提として
・順番を逆にすることができる
・各々の処理が相互に関係しない
という処理である場合のみ利用可能すなわち汎用性に乏しいのでは
静的な配列にしてしまえばまず問題がない
答えられるかというのは何をだ
2018/03/26(月) 03:36:54.00ID:???
>>576
> 静的な配列にしてしまえばまず問題がない
ではそこが問題だな。
"毎回" 静的な配列になるようになっていないのが問題
静的な配列にするのが "追加作業" になっているならば
それを追加作業ではなく、標準(一番楽な書き方)で
そうなるようにしておくのが正しい
追加作業だとどうしても手抜きで見逃してしまう
ましてや追加作業が必要な場合がレアケースだと絶対にハマる
> 静的な配列にしてしまえばまず問題がない
ではそこが問題だな。
"毎回" 静的な配列になるようになっていないのが問題
静的な配列にするのが "追加作業" になっているならば
それを追加作業ではなく、標準(一番楽な書き方)で
そうなるようにしておくのが正しい
追加作業だとどうしても手抜きで見逃してしまう
ましてや追加作業が必要な場合がレアケースだと絶対にハマる
2018/03/26(月) 03:53:53.69ID:???
もうすぐjqueryくるで
2018/03/26(月) 04:05:26.68ID:???
そんなオールスターいらんwww
2018/03/26(月) 04:13:04.26ID:???
2018/03/26(月) 04:21:42.08ID:???
2018/03/26(月) 10:23:32.60ID:???
2018/03/26(月) 11:22:43.09ID:???
2018/03/26(月) 11:50:52.84ID:???
https://dictionary.goo.ne.jp/word/en/all-star/
((限定的)) (ある地域・リーグの中から選抜された)一流選手をそろえた,オールスターの
((限定的)) スター総出演の,人気俳優をそろえた
━━ [名詞] 〔スポーツ〕 ((通例 all-stars)) オールスターチームに選ばれた選手.
やっぱり意味が分からん。何をそろえたの?
((限定的)) (ある地域・リーグの中から選抜された)一流選手をそろえた,オールスターの
((限定的)) スター総出演の,人気俳優をそろえた
━━ [名詞] 〔スポーツ〕 ((通例 all-stars)) オールスターチームに選ばれた選手.
やっぱり意味が分からん。何をそろえたの?
2018/03/26(月) 12:20:48.83ID:???
2018/03/26(月) 12:21:20.46ID:???
なんだあらしか
2018/03/26(月) 16:07:20.25ID:???
ネットの記事で、jQueryやlodashの機能は今では標準のJSに取り込まれているので
使う必要がないという記述を見ました
そうなのでしょうか?
自分はそこそこは取り込まれているものの、
やはり今でも使った方がいいように思います
使う必要がないという記述を見ました
そうなのでしょうか?
自分はそこそこは取り込まれているものの、
やはり今でも使った方がいいように思います
2018/03/26(月) 16:11:11.06ID:???
取り込まれているのが本当なら、
jQueryやlodash使っていれば、これからも使えるってことだよ
だって標準で取り込まれたんだからw
jQueryやlodash使っていれば、これからも使えるってことだよ
だって標準で取り込まれたんだからw
2018/03/26(月) 16:55:07.46ID:???
必要だと思った奴だけ使えばいい
必要かどうか自分で判断できないと開発はやっていけない
必要かどうか自分で判断できないと開発はやっていけない
2018/03/26(月) 19:00:37.43ID:???
なるべくライブラリを使わない方針にしても
生JSがカバーしてない部分が出てくる
→その部分はライブラリを使う
→全面的にライブラリの作法に則った方が全体として綺麗になる
ってなりがちですよね
生JSがカバーしてない部分が出てくる
→その部分はライブラリを使う
→全面的にライブラリの作法に則った方が全体として綺麗になる
ってなりがちですよね
2018/03/26(月) 19:06:46.41ID:???
なりがちじゃないかもしれませんね
2018/03/26(月) 20:24:35.39ID:???
自分のブログ内の記事タイトルをランダムに表示させるスクリプトを作成することは可能でしょうか?
下記サイトのようにボタンをクリックするとランダムで過去記事のタイトルリンクが表示されるというものです
http://www9.plala.or.jp/oyoyon/html/script/randomlink.html
ツールを埋め込めば簡単なのですが、ページが重くなってしまうのでできればJavascriptやphpなどで対応できたらと考えてます
よろしくお願いします
下記サイトのようにボタンをクリックするとランダムで過去記事のタイトルリンクが表示されるというものです
http://www9.plala.or.jp/oyoyon/html/script/randomlink.html
ツールを埋め込めば簡単なのですが、ページが重くなってしまうのでできればJavascriptやphpなどで対応できたらと考えてます
よろしくお願いします
2018/03/26(月) 20:27:46.78ID:???
可能です。
お礼は三行
お礼は三行
2018/03/26(月) 20:38:14.06ID:???
できますん
2018/03/26(月) 20:53:26.70ID:???
>>587
lodashはおいといて、jQueryで言うとその互換性担保の役割と
仮想DOM的な役割は終わりつつあるのは確かだと思う
jQueryって、荒れた凸凹の溶岩の上でも耐えられるオリハルコンの仮設住居を置いて
強制的にその中で作業させるくような感じだからね
でも今からは地面の荒れもだいぶ収まってきて気が利いた砂利くらいが引いてあるようになったから
いきなり仮設ドーンじゃなくて、舗装から少しずつ構築していって
必要十分な建物を作っていく方が良いんじゃないかって感じなのよ
lodashはおいといて、jQueryで言うとその互換性担保の役割と
仮想DOM的な役割は終わりつつあるのは確かだと思う
jQueryって、荒れた凸凹の溶岩の上でも耐えられるオリハルコンの仮設住居を置いて
強制的にその中で作業させるくような感じだからね
でも今からは地面の荒れもだいぶ収まってきて気が利いた砂利くらいが引いてあるようになったから
いきなり仮設ドーンじゃなくて、舗装から少しずつ構築していって
必要十分な建物を作っていく方が良いんじゃないかって感じなのよ
2018/03/26(月) 21:02:53.32ID:???
2018/03/26(月) 21:20:47.26ID:???
jQueryに「仮想DOM的な役割」(プギャーハライテーwww)などない。徹頭徹尾生DOMをイジるためのライブラリだ。
2018/03/26(月) 22:11:44.01ID:???
オリハルコンとかゲーム脳が過ぎるんじゃないかね
2018/03/26(月) 22:19:31.11ID:???
たしかにjQueryの互換性を吸収する役割はかなり小さくなったと思います
でもquerySelectorがあっても
removeClassみたいなのはないのでは?
複雑な処理ではありませんが、わざわざ自分で書きたくはありません
でもquerySelectorがあっても
removeClassみたいなのはないのでは?
複雑な処理ではありませんが、わざわざ自分で書きたくはありません
2018/03/26(月) 22:22:01.35ID:???
element.classList.add() / element.classList.remove() のことか?
2018/03/26(月) 22:26:43.20ID:???
2018/03/26(月) 22:55:38.34ID:???
>>602
何でも揃ってるよ
何でも揃ってるよ
2018/03/26(月) 22:58:10.99ID:???
揃える髪も無いくせに・・・
2018/03/26(月) 23:20:28.85ID:???
ちょっと前に
子ノードに探してるものがあるかどうかのチェックの質問あって
forで探せよっておこられてたけど
あれもメソッドがあるw
子ノードに探してるものがあるかどうかのチェックの質問あって
forで探せよっておこられてたけど
あれもメソッドがあるw
2018/03/26(月) 23:41:50.54ID:???
その流れは知らんけど既に目当てのnodeが参照できているなら
Node#contains() で結果をbooleanで取れる
Node#contains() で結果をbooleanで取れる
2018/03/26(月) 23:43:57.91ID:???
classListなんてIE10から既に対応しているという
2018/03/27(火) 00:14:28.24ID:???
>>602
> メソッドも揃ってるなら、そろそろ脱jQueryしてみてもいい時期なのかもしれませんね
脱jQueryを目的としている時点でjQueryは使い続けられることが
容易に想像できるよな。手段が目的になってるわけだから
残念ながらDOM APIにあるのはjQueryのサブセットだ
更に言うならば事あるごとにループが必要でjQueryのような
簡潔な記述は到底不可能だ
DOM APIが勝っているのは、実行速度と初回ダウンロードサイズだが
実行速度はマシンスペックの高さでスマホでも問題になってないし
ダウンロードサイズはCDNを使うことで他のサイトのキャシュが活かせる
そうなるとライブラリを使わないほうが記述量は増えるので
現実的にはjQueryを使ったほうがサイズが減ることも多い
> メソッドも揃ってるなら、そろそろ脱jQueryしてみてもいい時期なのかもしれませんね
脱jQueryを目的としている時点でjQueryは使い続けられることが
容易に想像できるよな。手段が目的になってるわけだから
残念ながらDOM APIにあるのはjQueryのサブセットだ
更に言うならば事あるごとにループが必要でjQueryのような
簡潔な記述は到底不可能だ
DOM APIが勝っているのは、実行速度と初回ダウンロードサイズだが
実行速度はマシンスペックの高さでスマホでも問題になってないし
ダウンロードサイズはCDNを使うことで他のサイトのキャシュが活かせる
そうなるとライブラリを使わないほうが記述量は増えるので
現実的にはjQueryを使ったほうがサイズが減ることも多い
2018/03/27(火) 00:27:15.02ID:???
ところでCDN使うってことは
CDNにどこからのアクセスかリファラでバレてしまうってことだよね?
CDNにどこからのアクセスかリファラでバレてしまうってことだよね?
2018/03/27(火) 00:28:46.08ID:???
2018/03/27(火) 00:43:26.53ID:???
>>610
バラバラでも無限にあるわけじゃないしw
それから自分のサイトから配信するよりもCDNを使ったほうが高速で、
自分のサイトのトラフィックを減らすという効果もある
全部自分で書くと、その分自分のサイトで配信する量が増えてしまうが
jQueryにそれを逃してやると、減らせるわけさ
バラバラでも無限にあるわけじゃないしw
それから自分のサイトから配信するよりもCDNを使ったほうが高速で、
自分のサイトのトラフィックを減らすという効果もある
全部自分で書くと、その分自分のサイトで配信する量が増えてしまうが
jQueryにそれを逃してやると、減らせるわけさ
2018/03/27(火) 01:20:29.62ID:???
イベントリスナの掃除とかまで考えると
もうjQuery使えばいいじゃんってなりますね
jQueryを使わなくなるのは、jQueryの代わりをしてくれるライブラリやフレームワークを使う時なのかも
もうjQuery使えばいいじゃんってなりますね
jQueryを使わなくなるのは、jQueryの代わりをしてくれるライブラリやフレームワークを使う時なのかも
2018/03/27(火) 01:21:39.84ID:???
リスナの掃除・・・?
2018/03/27(火) 04:36:38.15ID:???
>>592-598
JavaScript, jQuery で作れる
JavaScript, jQuery で作れる
2018/03/27(火) 05:08:35.51ID:???
616Name_Not_Found
2018/03/27(火) 06:01:02.77ID:40/0KQpl jQueryのソースコード読んでたら
elem = elements[ index ];
if ( !elem.style ) {
continue;
}
こんな記述があったんだけどstyleがfalseになることってあるの?
elem = elements[ index ];
if ( !elem.style ) {
continue;
}
こんな記述があったんだけどstyleがfalseになることってあるの?
2018/03/27(火) 08:08:50.08ID:???
>>615
> ライブラリというよりフレームワークに近いものだから
プログラマが書いたコードから呼び出すのがライブラリ
プログラマが書いたコードを呼び出すのがフレームワーク
jQueryはどうみてもライブラリだ
> ライブラリというよりフレームワークに近いものだから
プログラマが書いたコードから呼び出すのがライブラリ
プログラマが書いたコードを呼び出すのがフレームワーク
jQueryはどうみてもライブラリだ
2018/03/27(火) 17:39:41.98ID:???
そもそもjQueryを使うデメリットってありますか?
2018/03/27(火) 18:48:03.66ID:???
もちろん仮想DOM勢には劣るものの大抵のサイトの規模ならDOM操作の保守性は少し上がるかな。ただ一ヵ所二ヵ所くらいしかDOM操作しないのに導入するとたったそれだけのためにjQueryという巨大コードのパースが完了するまで待たされる。容量も増える。
一ヵ所二ヵ所くらいならDOMAPIで書けやと思うじゃん。
ところがあいつら書かないんじゃなくて書けないんだよな。
調べる気もなし。
強いていうならそういうゴミを量産してしまうのがデメリット。
一ヵ所二ヵ所くらいならDOMAPIで書けやと思うじゃん。
ところがあいつら書かないんじゃなくて書けないんだよな。
調べる気もなし。
強いていうならそういうゴミを量産してしまうのがデメリット。
2018/03/27(火) 18:54:39.97ID:???
労力と生産性
人生には限りがある
時間を大切にね
人生には限りがある
時間を大切にね
2018/03/27(火) 18:59:08.66ID:???
forループ内でsetTimeout書いてsetTimeoutの中の処理がおわったら次のループに行くようにしたいんだけど
どうすればいいのでしょう?
for () {
for () { setTimeout() }
}
な感じです。
どうすればいいのでしょう?
for () {
for () { setTimeout() }
}
な感じです。
2018/03/27(火) 19:53:07.24ID:???
promiseとreduceを使え。
setTimeoutのコールバックのケツでresolveしろ
setTimeoutのコールバックのケツでresolveしろ
2018/03/27(火) 21:12:51.30ID:???
>>620
jQueryを導入する無駄な時間を大切にね
jQueryを導入する無駄な時間を大切にね
2018/03/27(火) 21:30:52.09ID:???
>>619
> もちろん仮想DOM勢には劣るものの大抵のサイトの規模ならDOM操作の保守性は少し上がるかな。ただ一ヵ所二ヵ所くらいしかDOM操作しないのに導入するとたったそれだけのためにjQueryという巨大コードのパースが完了するまで待たされる。容量も増える。
はっきり書いておきましょう。
ただ一ヵ所二ヵ所くらいしかDOM操作しないのに
"仮想DOM" を導入すると
多数のJavaScriptファイルを読み込んだ上に
HTMLを大きく書き換えないといけないから
仮想DOM勢、つまりReactは導入されないんですよ
> もちろん仮想DOM勢には劣るものの大抵のサイトの規模ならDOM操作の保守性は少し上がるかな。ただ一ヵ所二ヵ所くらいしかDOM操作しないのに導入するとたったそれだけのためにjQueryという巨大コードのパースが完了するまで待たされる。容量も増える。
はっきり書いておきましょう。
ただ一ヵ所二ヵ所くらいしかDOM操作しないのに
"仮想DOM" を導入すると
多数のJavaScriptファイルを読み込んだ上に
HTMLを大きく書き換えないといけないから
仮想DOM勢、つまりReactは導入されないんですよ
2018/03/27(火) 21:32:50.33ID:???
ついでに仮想DOMが敗北したという話を見つけたので書いておきますね
https://html5experts.jp/shumpei-shiraishi/21754/
> laco しかし、仮想DOMは速かったけど、Angularも追いついちゃいましたね。
> しかも仮想DOMなしで。結局仮想DOMってどうだったのかなあ…と。
> 「ポイント、そこじゃなくない?」っていう(笑)。 (筆者注: ここ、lacoさんがイベントを盛り上げるため煽ってくれてます)
>
> koba04 まあ、仮想DOMだからこそ、ただの関数みたいな形でコンポーネントを簡単に作れるようになったので…。
>
> laco でも、最近Pure Componentって入ったじゃないですか。Shallow Rendererとか。
> あれってどうなんですか?この間ものすごく疑問に思って。Pure Componentにすると、
> オブジェクトの状態を自動で見て、自動で変更検知してくれるってやつですよね。 あれって、Reactがやりたかったことなんですか?
>
> koba04 あれは、オブジェクトツリーがでかくなると仮想DOM比較のコストもバカにならないので、
> その比較すらも飛ばしたい時に使うっていう感じです。
>
> laco 仮想DOMのアルゴリズムが敗北したってことじゃないですか?(笑)
>
> shumpei 煽る煽る(笑)。
>
> koba04 基本的にはそこまで必要とするものでもなくて、よっぽどパフォーマンスが求められる場面で使われるものかなと思っています。
>
> yosuke_furukawa ぼくとしては、パフォーマンスのチューニングポイントが増えたって話だと思ってます。
> 仮想DOMの敗北については、次のサーバーサイドレンダリングでぼくが話をするんで、まあここはこれくらいでいいんじゃないかなと(笑)。
https://html5experts.jp/shumpei-shiraishi/21754/
> laco しかし、仮想DOMは速かったけど、Angularも追いついちゃいましたね。
> しかも仮想DOMなしで。結局仮想DOMってどうだったのかなあ…と。
> 「ポイント、そこじゃなくない?」っていう(笑)。 (筆者注: ここ、lacoさんがイベントを盛り上げるため煽ってくれてます)
>
> koba04 まあ、仮想DOMだからこそ、ただの関数みたいな形でコンポーネントを簡単に作れるようになったので…。
>
> laco でも、最近Pure Componentって入ったじゃないですか。Shallow Rendererとか。
> あれってどうなんですか?この間ものすごく疑問に思って。Pure Componentにすると、
> オブジェクトの状態を自動で見て、自動で変更検知してくれるってやつですよね。 あれって、Reactがやりたかったことなんですか?
>
> koba04 あれは、オブジェクトツリーがでかくなると仮想DOM比較のコストもバカにならないので、
> その比較すらも飛ばしたい時に使うっていう感じです。
>
> laco 仮想DOMのアルゴリズムが敗北したってことじゃないですか?(笑)
>
> shumpei 煽る煽る(笑)。
>
> koba04 基本的にはそこまで必要とするものでもなくて、よっぽどパフォーマンスが求められる場面で使われるものかなと思っています。
>
> yosuke_furukawa ぼくとしては、パフォーマンスのチューニングポイントが増えたって話だと思ってます。
> 仮想DOMの敗北については、次のサーバーサイドレンダリングでぼくが話をするんで、まあここはこれくらいでいいんじゃないかなと(笑)。
2018/03/27(火) 21:36:02.53ID:???
・一度使い出したら全部作り直す覚悟がないと使うのをやめられない
・そんなん要りません
・そんなん要りません
2018/03/27(火) 21:44:19.01ID:???
2018/03/27(火) 22:11:21.74ID:???
2018/03/27(火) 22:17:31.98ID:???
ajax依存のサイトのアクセス解析って一体どうやってるの?
2018/03/27(火) 22:33:14.36ID:???
2018/03/27(火) 22:33:26.62ID:???
生jsで書くのってそんな面倒臭い?
設計段階に比べたら時間も労力も全然かからないから
気になったことがないんだけど
設計段階に比べたら時間も労力も全然かからないから
気になったことがないんだけど
2018/03/27(火) 22:38:29.52ID:???
IEのどのバージョンまで対象にするかによる
2018/03/27(火) 22:40:10.64ID:???
2018/03/27(火) 22:41:00.51ID:???
2018/03/27(火) 22:43:02.60ID:???
DOM APIが基本的に手続き型の構造をしているのが問題
一行ずつ処理を眺めていないと最終的な結果がわからない
それに対してjQueryだとコードが宣言的になる。
「なになに(セレクタ)は、こうだ」という風に宣言的に書けるから
状態を気にしなくて良くなる。
それはCSSの書き方と違い。(CSSも宣言的な言語)
一行ずつ処理を眺めていないと最終的な結果がわからない
それに対してjQueryだとコードが宣言的になる。
「なになに(セレクタ)は、こうだ」という風に宣言的に書けるから
状態を気にしなくて良くなる。
それはCSSの書き方と違い。(CSSも宣言的な言語)
2018/03/27(火) 22:43:51.97ID:???
2018/03/27(火) 22:46:16.00ID:???
2018/03/27(火) 22:47:29.68ID:???
2018/03/27(火) 22:49:08.18ID:???
2018/03/27(火) 22:50:17.23ID:???
>>637
普通コンポーネント的に設計しますよね?
例えば画面上にJavaScriptで拡張された入力フィールドが複数あるとか
jQueryを使うと一つだけでも複数あっても
まったく同じ書き方ができます。
それはCSSと同じなんですよ。
.klass { color: red } とすると
class=klassである要素が全て赤になります。
同等のことをjQueryで書くと
$('.klass).css({color: 'red'}) です。
CSSと文法が少し違うだけと考えられます。
でもDOM APIじゃこうは行きません
普通コンポーネント的に設計しますよね?
例えば画面上にJavaScriptで拡張された入力フィールドが複数あるとか
jQueryを使うと一つだけでも複数あっても
まったく同じ書き方ができます。
それはCSSと同じなんですよ。
.klass { color: red } とすると
class=klassである要素が全て赤になります。
同等のことをjQueryで書くと
$('.klass).css({color: 'red'}) です。
CSSと文法が少し違うだけと考えられます。
でもDOM APIじゃこうは行きません
2018/03/27(火) 22:51:14.95ID:???
>>639
> DOMガチャガチャいじらなきゃならない場合結局DOMの初期状態から操作ごとにどのようにDOMが変化するか実行順に追ってかないとセレクトスカるが…
そういう書き方になっちゃうからDOM APIはだめなんですね。
バグが減らないといったのはそういうことです。
> DOMガチャガチャいじらなきゃならない場合結局DOMの初期状態から操作ごとにどのようにDOMが変化するか実行順に追ってかないとセレクトスカるが…
そういう書き方になっちゃうからDOM APIはだめなんですね。
バグが減らないといったのはそういうことです。
2018/03/27(火) 22:52:13.51ID:???
いやjQueryの話だよ。
2018/03/27(火) 22:52:56.53ID:???
DOM APIの話でしょ? 同じことをDOM APIですると
もっとひどいことになるんですからw
もっとひどいことになるんですからw
2018/03/27(火) 22:55:04.93ID:???
2018/03/27(火) 22:55:46.87ID:???
いや、jQuery。
DOMを操作するんだから操作前と操作後でDOMが変化するのは変わらん。
その状態にあったセレクタ書くには結局上から見てくしかない。
DOMを操作するんだから操作前と操作後でDOMが変化するのは変わらん。
その状態にあったセレクタ書くには結局上から見てくしかない。
2018/03/27(火) 22:56:55.06ID:???
2018/03/27(火) 22:58:47.17ID:???
2018/03/27(火) 23:00:05.07ID:???
>>645
> DOMを操作するんだから操作前と操作後でDOMが変化するのは変わらん。
それが間違った使い方。DOMを操作するとメンテナンス性が下がる
DOMは基本操作してはいけない。見た目を変えたいならそれはCSSでやるべきこと
見た目はCSSというのは、なんども言われてる話だろ
CSSで変えるのだから、ウェブデザイナが手動でclassを変更することで
JavaScriptを必要とせずに、状態に応じた見た目を作ることができる。
作業の分担ができる。JavaScriptでやるのは状態(クラス等)を変えるのみ
DOM APIでDOMをガシガシ操作なんかするからバグ減らないんだよ。
> DOMを操作するんだから操作前と操作後でDOMが変化するのは変わらん。
それが間違った使い方。DOMを操作するとメンテナンス性が下がる
DOMは基本操作してはいけない。見た目を変えたいならそれはCSSでやるべきこと
見た目はCSSというのは、なんども言われてる話だろ
CSSで変えるのだから、ウェブデザイナが手動でclassを変更することで
JavaScriptを必要とせずに、状態に応じた見た目を作ることができる。
作業の分担ができる。JavaScriptでやるのは状態(クラス等)を変えるのみ
DOM APIでDOMをガシガシ操作なんかするからバグ減らないんだよ。
2018/03/27(火) 23:00:47.74ID:???
ある要素から特定の親の要素取得するのってどうやってやるの?
jQueryでいうところの .parents('.foo') みたいなの
.parent() は .parentNode で取れるけど .parents('.foo') にあたるのはないよね
parentNode でループしながら
if (element.classList.contains('foo')) するしかないのかな
jQueryでいうところの .parents('.foo') みたいなの
.parent() は .parentNode で取れるけど .parents('.foo') にあたるのはないよね
parentNode でループしながら
if (element.classList.contains('foo')) するしかないのかな
2018/03/27(火) 23:02:33.65ID:???
2018/03/27(火) 23:03:41.43ID:???
入力行を増やしたり減らしたりする
これDOM操作ですよね
これDOM操作ですよね
2018/03/27(火) 23:04:34.43ID:???
>>651
jQuery君が言うにはそういうことにjQuery使ってはいけないらしい。
jQuery君が言うにはそういうことにjQuery使ってはいけないらしい。
2018/03/27(火) 23:06:27.98ID:???
>>649
element.querySelector のことかな?
element.querySelector のことかな?
2018/03/27(火) 23:07:13.79ID:???
あ、違うか
2018/03/27(火) 23:08:54.44ID:???
>>652
マジすか生JSでやります
マジすか生JSでやります
2018/03/27(火) 23:09:42.10ID:???
>>647
https://jsfiddle.net/wamwg7b0/
じゃあ例えばコレ
数値を入れたらsuccess(緑)になる入力フィールド×5
JavaScriptのコードだけ転載すると、これだけ
入力フィールドがいくつ有ってもこれだけだし、
ループも条件判定もない。
$('[type="text"]').on('keyup', function() {
$(this).toggleClass('success', $.isNumeric(this.value))
})
keyupというイベントのタイミングで
「入力値が数値ならsuccesである」を適用する
宣言的というのはこういう事
https://jsfiddle.net/wamwg7b0/
じゃあ例えばコレ
数値を入れたらsuccess(緑)になる入力フィールド×5
JavaScriptのコードだけ転載すると、これだけ
入力フィールドがいくつ有ってもこれだけだし、
ループも条件判定もない。
$('[type="text"]').on('keyup', function() {
$(this).toggleClass('success', $.isNumeric(this.value))
})
keyupというイベントのタイミングで
「入力値が数値ならsuccesである」を適用する
宣言的というのはこういう事
2018/03/27(火) 23:12:17.87ID:???
>>656
ちゃんと全部出してくれない?
ちゃんと全部出してくれない?
2018/03/27(火) 23:16:57.48ID:???
>>649
element.closest('.foo')でええやろ
element.closest('.foo')でええやろ
2018/03/27(火) 23:20:54.67ID:???
>>656ってイベントハンドラの話だよな・・・それとも俺の目が腐ってるのか
2018/03/27(火) 23:23:08.99ID:???
>>659
検索に引っ掛かったのがそれだったんだろwww
検索に引っ掛かったのがそれだったんだろwww
2018/03/27(火) 23:56:31.59ID:???
>>649
var elements = document.getElementsByClassName( 'footer-menu' ) ;
elements[0].parentNode.removeChild(elements[0]) ;
素のJavaScript だと、自分自身を削除するのにも、
一旦親を取得して、親から子供を削除する
頭おかしいw
var elements = document.getElementsByClassName( 'footer-menu' ) ;
elements[0].parentNode.removeChild(elements[0]) ;
素のJavaScript だと、自分自身を削除するのにも、
一旦親を取得して、親から子供を削除する
頭おかしいw
2018/03/28(水) 00:06:18.45ID:???
jQueryはセレクタで選択される対象が仮に存在しなくても
その後のメソッドでエラーが出ないところがいいですね
これは生JSでは出来ないのでは?
その後のメソッドでエラーが出ないところがいいですね
これは生JSでは出来ないのでは?
2018/03/28(水) 00:39:27.21ID:???
>>661
remove()でおk
remove()でおk
2018/03/28(水) 01:35:41.33ID:???
>>661
直接削除できるやろ
直接削除できるやろ
2018/03/28(水) 02:04:48.89ID:???
2018/03/28(水) 02:29:37.06ID:???
>>661
649はremoveするとは言ってないけどな
649はremoveするとは言ってないけどな
2018/03/28(水) 02:46:44.72ID:???
2018/03/28(水) 02:47:34.83ID:???
$('.hage665').remove()
素晴らしい。これ以上減らせと言われてもできないレベル
素晴らしい。これ以上減らせと言われてもできないレベル
2018/03/28(水) 02:54:54.84ID:???
getElementsByClassNameはネイティブで、対する$の実装は何百行ものjavascriptコードだけどな。
この点はいくら強調してもし過ぎるということはない。
この点はいくら強調してもし過ぎるということはない。
2018/03/28(水) 02:58:40.88ID:???
あれ?jQuery君jQueryはDOM操作するものじゃない!jQueryでDOM操作してはいけない!って言ってたのにw
意見コロコロ、てのひらクルクル、頭パッパラパーwww
意見コロコロ、てのひらクルクル、頭パッパラパーwww
2018/03/28(水) 03:04:57.70ID:???
そうさ 恐れないで
2018/03/28(水) 09:07:59.29ID:???
汎用性の高いモノに対しての利便性向上、jQueryはこれに尽きる
このことを否定するならプログラミングを否定するのと同様
プログラミングは芸術作品ではなく、コンピューターに意図的に処理をさせることが目的
個人の意図の範疇
このことを否定するならプログラミングを否定するのと同様
プログラミングは芸術作品ではなく、コンピューターに意図的に処理をさせることが目的
個人の意図の範疇
2018/03/28(水) 09:10:52.58ID:???
うんライブラリだね。
674Name_Not_Found
2018/03/28(水) 11:46:03.36ID:GLWrEKsB 生jsでjQueryを再現するには
基本的に配列を生成して配列を返す処理をしなければいけないですね?
たとえ要素が一つと分かっていても、
getElementIdではなくquerySelectorを使って、
たとえ要素がなくてもその後のメソッドチェーンでエラーが出ないようにしないと
再現にはなりません
基本的に配列を生成して配列を返す処理をしなければいけないですね?
たとえ要素が一つと分かっていても、
getElementIdではなくquerySelectorを使って、
たとえ要素がなくてもその後のメソッドチェーンでエラーが出ないようにしないと
再現にはなりません
2018/03/28(水) 11:59:47.26ID:???
まったく同じにしたいならjQueryくんじゃないがさすがにjQuery使えよ。
jQuery内部でquerySelector使ってるよ。
jQuery再実装とかwww
jQuery内部でquerySelector使ってるよ。
jQuery再実装とかwww
2018/03/28(水) 12:32:12.15ID:???
それはその通りですね
結局jQueryを使うか使わないかということよりも
関数型パラダイムに則って書くかどうかの方が重要なのでしょうね
結局jQueryを使うか使わないかということよりも
関数型パラダイムに則って書くかどうかの方が重要なのでしょうね
2018/03/28(水) 12:53:40.72ID:???
jQueryを使えば確かにクラスで複数の要素を取得して楽に処理できるけど
普通はそんなことあまりしないからな
jQueryが当たり前なってるからHTMLの段階でなるべくjQueryで扱いやすいように設計してるだけ
jQueryを使う気が最初から無ければそれで組みやすいように設計するだけ
つまりjQueryに考え方が依存して過剰評価しているだけ
普通はそんなことあまりしないからな
jQueryが当たり前なってるからHTMLの段階でなるべくjQueryで扱いやすいように設計してるだけ
jQueryを使う気が最初から無ければそれで組みやすいように設計するだけ
つまりjQueryに考え方が依存して過剰評価しているだけ
2018/03/28(水) 12:58:52.02ID:???
2018/03/28(水) 13:31:50.16ID:???
簡単に云うとですね
ここの質問に出てくるようなレベル、失礼、用途ならjQueryを使った方が利便性が向上するということなんです
ここの質問に出てくるようなレベル、失礼、用途ならjQueryを使った方が利便性が向上するということなんです
2018/03/28(水) 14:41:35.92ID:???
当たり前だ。何百行もコードロードして利便性が下がるライブラリなんか死んでしまえ。
そうではなくてここはjavascript の質問用スレだから。
そうではなくてここはjavascript の質問用スレだから。
2018/03/28(水) 14:45:40.81ID:???
定期的にjQueryの話題が出てきて不毛な議論がループするので禁止してくれ
2018/03/28(水) 20:03:10.81ID:???
>>677
> jQueryを使えば確かにクラスで複数の要素を取得して楽に処理できるけど
> 普通はそんなことあまりしないからな
え? CSSでclass使うでしょ?
そのclassに当てはまるもの全てに処理することってよくあるよ
> jQueryを使えば確かにクラスで複数の要素を取得して楽に処理できるけど
> 普通はそんなことあまりしないからな
え? CSSでclass使うでしょ?
そのclassに当てはまるもの全てに処理することってよくあるよ
2018/03/28(水) 20:29:49.53ID:???
ここいけよかす
日本語読めないのか?
+ JavaScript & jQuery 質問用スレッド vol.8 +
https://mevius.5ch.net/test/read.cgi/hp/1510321470/l50
日本語読めないのか?
+ JavaScript & jQuery 質問用スレッド vol.8 +
https://mevius.5ch.net/test/read.cgi/hp/1510321470/l50
2018/03/28(水) 20:30:52.28ID:???
はい
2018/03/28(水) 22:28:13.59ID:???
>>682
いや、そんなにないと思う
どちらかと言えばそれは当てはまるもの全てに処理したいから、class使ってねということだろう
そういう場合はカスタムエレメントでも使ったほうが良い
そうすれば要素が作られた時、挿入されたときに即座に適宜処理ができるんだから
あとから要素をclassで検索して機能を付与するとか、
スマートな解決策のように見えるかもしれないけど、それって実際はただのハックだからね?
どっかの誰かが作った物があって、それに対してハックしたいなら非常に便利が良いと思うよ
でも今どき、オマケでJSによってページを補正するみたいな開発や考え方はしないからね
HTML5の勧告に纏わる公式文書にも書いてあったけど、
HTMLっていうのはアプリケーションプラットフォームになってるんだよ
つまり土台であって、その上にJSとか乗っかって1つのものができるわけ
それが横並びだとか、化粧程度だとか、もしくはJSはHTMLを改造するためのドリルみたいに
捉えてるのだとしたら、その考え方は古臭いと思うよ
いや、そんなにないと思う
どちらかと言えばそれは当てはまるもの全てに処理したいから、class使ってねということだろう
そういう場合はカスタムエレメントでも使ったほうが良い
そうすれば要素が作られた時、挿入されたときに即座に適宜処理ができるんだから
あとから要素をclassで検索して機能を付与するとか、
スマートな解決策のように見えるかもしれないけど、それって実際はただのハックだからね?
どっかの誰かが作った物があって、それに対してハックしたいなら非常に便利が良いと思うよ
でも今どき、オマケでJSによってページを補正するみたいな開発や考え方はしないからね
HTML5の勧告に纏わる公式文書にも書いてあったけど、
HTMLっていうのはアプリケーションプラットフォームになってるんだよ
つまり土台であって、その上にJSとか乗っかって1つのものができるわけ
それが横並びだとか、化粧程度だとか、もしくはJSはHTMLを改造するためのドリルみたいに
捉えてるのだとしたら、その考え方は古臭いと思うよ
2018/03/28(水) 23:31:40.90ID:???
> そういう場合はカスタムエレメントでも使ったほうが良い
そのカスタムエレメント作る用途で使えるって話でしょ?
っていうか、どうやってそれ作るの
ちょっとサンプル書いてみてよ
そのカスタムエレメント作る用途で使えるって話でしょ?
っていうか、どうやってそれ作るの
ちょっとサンプル書いてみてよ
2018/03/28(水) 23:32:38.83ID:???
> HTMLっていうのはアプリケーションプラットフォームになってるんだよ
それは一部の話ね。
ブログ、ニュース、企業サイト、情報掲載と、
これらウェブの大半はアプリケーションじゃない
それは一部の話ね。
ブログ、ニュース、企業サイト、情報掲載と、
これらウェブの大半はアプリケーションじゃない
2018/03/28(水) 23:39:11.04ID:???
jQueryはいまカスタムエレメントを実現するのに
一番適しているってことで
一番適しているってことで
2018/03/28(水) 23:40:20.65ID:???
コピペしてやったから
あっちいけ
+ JavaScript & jQuery 質問用スレッド vol.8 +
https://mevius.5ch.net/test/read.cgi/hp/1510321470/l50
あらし行為はやめろ
あっちいけ
+ JavaScript & jQuery 質問用スレッド vol.8 +
https://mevius.5ch.net/test/read.cgi/hp/1510321470/l50
あらし行為はやめろ
2018/03/29(木) 01:33:24.42ID:???
ごくろう
2018/03/29(木) 01:33:56.47ID:???
135 名前:Name_Not_Found[sage] 投稿日:2018/03/28(水) 23:39:20.81 ID:???
685Name_Not_Found2018/03/28(水) 22:28:13.59ID:???
>>682
いや、そんなにないと思う
どちらかと言えばそれは当てはまるもの全てに処理したいから、class使ってねということだろう
そういう場合はカスタムエレメントでも使ったほうが良い
そうすれば要素が作られた時、挿入されたときに即座に適宜処理ができるんだから
あとから要素をclassで検索して機能を付与するとか、
スマートな解決策のように見えるかもしれないけど、それって実際はただのハックだからね?
どっかの誰かが作った物があって、それに対してハックしたいなら非常に便利が良いと思うよ
でも今どき、オマケでJSによってページを補正するみたいな開発や考え方はしないからね
HTML5の勧告に纏わる公式文書にも書いてあったけど、
HTMLっていうのはアプリケーションプラットフォームになってるんだよ
つまり土台であって、その上にJSとか乗っかって1つのものができるわけ
それが横並びだとか、化粧程度だとか、もしくはJSはHTMLを改造するためのドリルみたいに
捉えてるのだとしたら、その考え方は古臭いと思うよ
686Name_Not_Found2018/03/28(水) 23:31:40.90ID:???
> そういう場合はカスタムエレメントでも使ったほうが良い
そのカスタムエレメント作る用途で使えるって話でしょ?
っていうか、どうやってそれ作るの
ちょっとサンプル書いてみてよ
687Name_Not_Found2018/03/28(水) 23:32:38.83ID:???
> HTMLっていうのはアプリケーションプラットフォームになってるんだよ
それは一部の話ね。
ブログ、ニュース、企業サイト、情報掲載と、
これらウェブの大半はアプリケーションじゃない
685Name_Not_Found2018/03/28(水) 22:28:13.59ID:???
>>682
いや、そんなにないと思う
どちらかと言えばそれは当てはまるもの全てに処理したいから、class使ってねということだろう
そういう場合はカスタムエレメントでも使ったほうが良い
そうすれば要素が作られた時、挿入されたときに即座に適宜処理ができるんだから
あとから要素をclassで検索して機能を付与するとか、
スマートな解決策のように見えるかもしれないけど、それって実際はただのハックだからね?
どっかの誰かが作った物があって、それに対してハックしたいなら非常に便利が良いと思うよ
でも今どき、オマケでJSによってページを補正するみたいな開発や考え方はしないからね
HTML5の勧告に纏わる公式文書にも書いてあったけど、
HTMLっていうのはアプリケーションプラットフォームになってるんだよ
つまり土台であって、その上にJSとか乗っかって1つのものができるわけ
それが横並びだとか、化粧程度だとか、もしくはJSはHTMLを改造するためのドリルみたいに
捉えてるのだとしたら、その考え方は古臭いと思うよ
686Name_Not_Found2018/03/28(水) 23:31:40.90ID:???
> そういう場合はカスタムエレメントでも使ったほうが良い
そのカスタムエレメント作る用途で使えるって話でしょ?
っていうか、どうやってそれ作るの
ちょっとサンプル書いてみてよ
687Name_Not_Found2018/03/28(水) 23:32:38.83ID:???
> HTMLっていうのはアプリケーションプラットフォームになってるんだよ
それは一部の話ね。
ブログ、ニュース、企業サイト、情報掲載と、
これらウェブの大半はアプリケーションじゃない
2018/03/29(木) 01:34:13.97ID:???
136 名前:Name_Not_Found[sage] 投稿日:2018/03/29(木) 00:37:32.00 ID:???
jq関係ないけど
HTMLがアプリケーションプラットフォームって考え方は
ぶっちゃけ危険極まりないよね・・・
jq関係ないけど
HTMLがアプリケーションプラットフォームって考え方は
ぶっちゃけ危険極まりないよね・・・
2018/03/29(木) 01:35:48.16ID:???
>>692
俺もそう思う。
HTMLで文書じゃなくてアプリケーションを作るっていうのは
ごく一部だよ
大抵はHTMLとCSS、そしてJavaScriptでちょっと味付け
これから変えていこう!なんて波は来てない
誰も求めてない
俺もそう思う。
HTMLで文書じゃなくてアプリケーションを作るっていうのは
ごく一部だよ
大抵はHTMLとCSS、そしてJavaScriptでちょっと味付け
これから変えていこう!なんて波は来てない
誰も求めてない
694661
2018/03/29(木) 02:25:21.50ID:??? 素のJS のremove では、動かないブラウザがあるから、
素のJSでは、661 のように書く
だから互換性が高い、jQuery のremoveを使った方がよい
一々、各ブラウザの機能を調べて、素のJSで対応するのが面倒くさい。
古いブラウザを使っている奴もいるし
素のJSでは、661 のように書く
だから互換性が高い、jQuery のremoveを使った方がよい
一々、各ブラウザの機能を調べて、素のJSで対応するのが面倒くさい。
古いブラウザを使っている奴もいるし
2018/03/29(木) 02:42:40.44ID:???
classに対して処理振るのが最善なケースってどんなのがある?
同じ処理つけたい要素を不定数生成しなきゃいけないときは
createElementの時listenerつけたりhandlerの内側でやらせる手がある
classで処理振ると他の場所でclassを
使いまわしされたら想定外のバグが出そう
個人レベルの小規模なら問題にならないかもだけど
同じ処理つけたい要素を不定数生成しなきゃいけないときは
createElementの時listenerつけたりhandlerの内側でやらせる手がある
classで処理振ると他の場所でclassを
使いまわしされたら想定外のバグが出そう
個人レベルの小規模なら問題にならないかもだけど
2018/03/29(木) 03:09:18.27ID:???
>>695
それ単にクラスの名前つけルールが無いと困るって言ってるだけだよ。
CSSでも発生する問題
.enabledというクラス名を付けていたら、
他の場所で使い回されて困った。
これと何も変わらん
それ単にクラスの名前つけルールが無いと困るって言ってるだけだよ。
CSSでも発生する問題
.enabledというクラス名を付けていたら、
他の場所で使い回されて困った。
これと何も変わらん
2018/03/29(木) 03:22:17.39ID:???
コピペしてやったから
あっちいけ
+ JavaScript & jQuery 質問用スレッド vol.8 +
https://mevius.5ch.net/test/read.cgi/hp/1510321470/l50
あらし行為はやめろ
あっちいけ
+ JavaScript & jQuery 質問用スレッド vol.8 +
https://mevius.5ch.net/test/read.cgi/hp/1510321470/l50
あらし行為はやめろ
2018/03/29(木) 03:28:57.23ID:???
classを使う最善なケースが出ないとなあ
2018/03/29(木) 06:45:30.60ID:???
カスタムエレメントどうやって作るの?という質問の意味が分からない
好きな要素をextendsしてregisterElementするだけじゃないか
そこにjQueryを使う?好きにしたら良いと思うが、
やっぱりjQueryありきの考え方だねと言わざるを得ないね
でも他のライブラリとかも使うかもしれないし、
jQueryで処理しちゃあ生要素に戻して他で処理するみたいなクソコードになると思うよ
それなら最初からjQUeryで完結させたほうが良い
jQueryはそういう他との相容れなさが欠点だからね
remove()が使えない? 使いたい機能があって使えない環境があるなら
ポリフィル書くなり用意するなりすればいいじゃないか
そんな100も200も要るようなことなんて無いしね
それが面倒だからjQuery使うというのはOK
だけど最初から使ったほうが良いという考え方はNG
この違いが分かるか?
結局jQueryありきの価値観の人達って、他と相容れないjQueryを使いすぎて
例えばちょっとポリフィルを作って数個の素朴なライブラリを組み合わせて使うとか、
他のフレームワークを使った方が今回は良いんじゃないかとか考える能が無くなってるんだよ
jQueryだってやり方によっちゃ組み合わせて使える力も持ってるけど
上のカスタムエレメントの件で分かるように使いこなせてないしね
要するに考え方がいつまで経っても超古臭くて閉鎖的なんだよね
とりあえずjQuery使っとけばいいだろうみたいなのはやっぱり良くないよ
物は1つ1つ考えて良く使わないと
好きな要素をextendsしてregisterElementするだけじゃないか
そこにjQueryを使う?好きにしたら良いと思うが、
やっぱりjQueryありきの考え方だねと言わざるを得ないね
でも他のライブラリとかも使うかもしれないし、
jQueryで処理しちゃあ生要素に戻して他で処理するみたいなクソコードになると思うよ
それなら最初からjQUeryで完結させたほうが良い
jQueryはそういう他との相容れなさが欠点だからね
remove()が使えない? 使いたい機能があって使えない環境があるなら
ポリフィル書くなり用意するなりすればいいじゃないか
そんな100も200も要るようなことなんて無いしね
それが面倒だからjQuery使うというのはOK
だけど最初から使ったほうが良いという考え方はNG
この違いが分かるか?
結局jQueryありきの価値観の人達って、他と相容れないjQueryを使いすぎて
例えばちょっとポリフィルを作って数個の素朴なライブラリを組み合わせて使うとか、
他のフレームワークを使った方が今回は良いんじゃないかとか考える能が無くなってるんだよ
jQueryだってやり方によっちゃ組み合わせて使える力も持ってるけど
上のカスタムエレメントの件で分かるように使いこなせてないしね
要するに考え方がいつまで経っても超古臭くて閉鎖的なんだよね
とりあえずjQuery使っとけばいいだろうみたいなのはやっぱり良くないよ
物は1つ1つ考えて良く使わないと
2018/03/29(木) 09:12:18.22ID:???
他と相容れないってw
JavaScriptに取り込まれてること自体が
jQueryの多大な貢献を示していると思うけど
JavaScriptに取り込まれてること自体が
jQueryの多大な貢献を示していると思うけど
2018/03/29(木) 09:30:48.27ID:???
>>699
> カスタムエレメントどうやって作るの?という質問の意味が分からない
> 好きな要素をextendsしてregisterElementするだけじゃないか
だから、このスレか、jsfiddleなどに
実際に動くコードを一つ書くだけですよ。
> カスタムエレメントどうやって作るの?という質問の意味が分からない
> 好きな要素をextendsしてregisterElementするだけじゃないか
だから、このスレか、jsfiddleなどに
実際に動くコードを一つ書くだけですよ。
2018/03/29(木) 10:37:36.50ID:???
通常四行必要なところが三行になります!とか
一行で書けます!とか
そんなせせこましい次元じゃなくて
100行必要なところが1行になります!とか
一般に実装されてなくて個人で実装するには難易度が高い関数が使えます!
とか、そういうのないの
一行で書けます!とか
そんなせせこましい次元じゃなくて
100行必要なところが1行になります!とか
一般に実装されてなくて個人で実装するには難易度が高い関数が使えます!
とか、そういうのないの
2018/03/29(木) 10:44:12.75ID:???
ライブラリってそういうもんだが
2018/03/29(木) 10:51:31.26ID:???
jQueryを否定できるのは生JavaScriptではなくて
jQueryを超克したライブラリだと思います
そういうライブラリないんですか?
jQueryを超克したライブラリだと思います
そういうライブラリないんですか?
2018/03/29(木) 11:43:35.50ID:???
>>703
例えば今は必要性薄くなってきたけどsha512使うためのライブラリとか
zip/unzipするためのライブラリとか
自分で書くには行数すごくなるしいろいろと問題もある
むしろライブラリってこういうのが基本で
jQueryみたいなのは今やどっちかっていうと
「ショートカット集&ポリフィル集」じゃないの?
例えば今は必要性薄くなってきたけどsha512使うためのライブラリとか
zip/unzipするためのライブラリとか
自分で書くには行数すごくなるしいろいろと問題もある
むしろライブラリってこういうのが基本で
jQueryみたいなのは今やどっちかっていうと
「ショートカット集&ポリフィル集」じゃないの?
2018/03/29(木) 11:44:19.25ID:???
2018/03/29(木) 12:41:05.40ID:???
悔しかったらjQueryに勝るシンプルなsource書いてね
2018/03/29(木) 12:45:10.44ID:???
jQueryの代替を提供してるのはフレームワークばかりの感じがします
置き換えたらDOM操作以外の余計なものまで付いてくるので困りますね
置き換えたらDOM操作以外の余計なものまで付いてくるので困りますね
2018/03/29(木) 13:04:03.46ID:???
なにせjQuery君によるとDOM操作用のライブラリでは無いらしいからな。
2018/03/29(木) 19:55:10.17ID:???
2018/03/29(木) 21:09:34.90ID:???
カスタムエレメントがほしいって思ったことがない
つまりHTMLパーツのコンポーネント化っていう
概念がなくて行き当たりばったりでCSSでデザインしてるだけ
こういうやつもいるからjQueryでクラス使って
コンポーネントに対して処理をする便利さが理解できないんだろうな
つまりHTMLパーツのコンポーネント化っていう
概念がなくて行き当たりばったりでCSSでデザインしてるだけ
こういうやつもいるからjQueryでクラス使って
コンポーネントに対して処理をする便利さが理解できないんだろうな
2018/03/29(木) 21:11:31.53ID:???
>>708
それな
jQueryの代替のフレームワークはJavaScriptのフレームワークで
HTML+CSSメインの作り方からJavaScriptメインに
代わってしまう。
わかりやすく言えばプログラミングできなきゃ
HTMLも表示できない。jQueryの利用者が今も増え続けてる理由だよ
それな
jQueryの代替のフレームワークはJavaScriptのフレームワークで
HTML+CSSメインの作り方からJavaScriptメインに
代わってしまう。
わかりやすく言えばプログラミングできなきゃ
HTMLも表示できない。jQueryの利用者が今も増え続けてる理由だよ
2018/03/29(木) 21:19:30.28ID:???
https://w3techs.com/technologies/history_overview/javascript_library/all
ここ二ヶ月の間73.2%から増えてないから
とうとう上げ止まったか?と思ったら今月73.3%になった
よかった。jQueryの利用者はまだ増え続けてたんだ。
ここ二ヶ月の間73.2%から増えてないから
とうとう上げ止まったか?と思ったら今月73.3%になった
よかった。jQueryの利用者はまだ増え続けてたんだ。
2018/03/29(木) 21:42:35.71ID:???
>>710
要素をカスタムしたい場合、という回答では不十分か?
今回の件に限らないけど、どうして何かしら例を出した程度の場合に
そいつにその物事についての説明やサンプルを求めるのかがさっぽり理解できない
俺の考えを知りたいのか?、それとも俺を試してるつもりなのか?
そんなの適当にググって出てくるサイトの筆者の方がよっぽど詳しいし
よっぽどためになる事書いてあるに決まってるだろう
俺はカスタムエレメントの申し子じゃないんだからさ
でもとりあえず上のclassの話で回答しておくと、
要素に何かしらの機能や性質を持たせる、という考え方と違うものとして
何かしらの機能や性質を持った要素が定義してあって、それを使うという考え方を挙げた
例えば一部で幾つか配列操作メソッドがほしいときに、
Array.prortotype、もしくはArrayのインスタンスにメソッドがを定義するのではなく、
Arrayをextendsしたクラスを用意しておいて、必要なときではそちらでインスタンスを作るということ、
このたとえならjQueryはlodashを使うことに近いのかもしれない
ただし、そのlodashは入出力がArrayではなく、独自のArrayLikeオブジェクトになってるって感じ
そこがちょっと無視できないポイント
つまり基本的にlodash世界内で完結するように書くものであって、
lodashに一旦通して配列を加工して、lodash空間はそこで一旦終わらせて、
次に別のものに通していくってことが、ロジック上難しいのではないけれど、概念上困難ということになる
要素をカスタムしたい場合、という回答では不十分か?
今回の件に限らないけど、どうして何かしら例を出した程度の場合に
そいつにその物事についての説明やサンプルを求めるのかがさっぽり理解できない
俺の考えを知りたいのか?、それとも俺を試してるつもりなのか?
そんなの適当にググって出てくるサイトの筆者の方がよっぽど詳しいし
よっぽどためになる事書いてあるに決まってるだろう
俺はカスタムエレメントの申し子じゃないんだからさ
でもとりあえず上のclassの話で回答しておくと、
要素に何かしらの機能や性質を持たせる、という考え方と違うものとして
何かしらの機能や性質を持った要素が定義してあって、それを使うという考え方を挙げた
例えば一部で幾つか配列操作メソッドがほしいときに、
Array.prortotype、もしくはArrayのインスタンスにメソッドがを定義するのではなく、
Arrayをextendsしたクラスを用意しておいて、必要なときではそちらでインスタンスを作るということ、
このたとえならjQueryはlodashを使うことに近いのかもしれない
ただし、そのlodashは入出力がArrayではなく、独自のArrayLikeオブジェクトになってるって感じ
そこがちょっと無視できないポイント
つまり基本的にlodash世界内で完結するように書くものであって、
lodashに一旦通して配列を加工して、lodash空間はそこで一旦終わらせて、
次に別のものに通していくってことが、ロジック上難しいのではないけれど、概念上困難ということになる
2018/03/29(木) 22:04:11.59ID:???
俺が変わりに答えてあげるけど
jQueryならサクッとできることが
カスタムエレメントだとすごく大変
jQueryならサクッとできることが
カスタムエレメントだとすごく大変
2018/03/29(木) 22:14:46.45ID:???
>>714
具体例
具体例
2018/03/30(金) 06:52:38.70ID:???
2018/03/30(金) 09:17:14.08ID:???
なんでイライラしてるやつばかりなんだ?
2018/03/30(金) 09:49:24.92ID:???
親を殺したjQueryがのさばってるから
2018/03/30(金) 12:52:02.63ID:???
custom components は、React とかだろ
JS は、Ruby, Python みたいに、
バッテリー同梱(batteries included)じゃないから、
標準ライブラリ・フレームワークが無く、自分で探さないといけない
各ブラウザ・スマホの実行環境を考慮した結果、標準にしない方がよい。
標準にすると、性能などで困るメーカーが出てくる
JS は、Ruby, Python みたいに、
バッテリー同梱(batteries included)じゃないから、
標準ライブラリ・フレームワークが無く、自分で探さないといけない
各ブラウザ・スマホの実行環境を考慮した結果、標準にしない方がよい。
標準にすると、性能などで困るメーカーが出てくる
2018/03/30(金) 19:14:16.00ID:???
2018/03/30(金) 19:19:46.51ID:???
Railsにincludedされてるバッテリー風情がイキがっててワロタwwwww
2018/03/30(金) 22:48:15.83ID:???
Web Componentsが各ブラウザでネイティブに実装されたら
今のAngularやReactなどのフレームワークは死滅する
一番の問題はフレームワークと共存できないということ
フレームワーク側もシェア維持のためにWeb Componentsに対応するのだろうが
今と作り方がまったく変わってしまう
だけどjQueryはただのライブラリなので、Web Componentsと共存できる
部分的にjQuery、部分的にWeb Componentsを使と言うことが可能
またWeb Components時代になってもコンポーネントとコンポーネントをつなぐ
必要がある。ここにjQueryは使うことができる。
コンポーネントが見つからない場合、今までどおりjQueryを使うこともできる
混ぜて使うことが可能。これがjQueryの大きなメリット
今のAngularやReactなどのフレームワークは死滅する
一番の問題はフレームワークと共存できないということ
フレームワーク側もシェア維持のためにWeb Componentsに対応するのだろうが
今と作り方がまったく変わってしまう
だけどjQueryはただのライブラリなので、Web Componentsと共存できる
部分的にjQuery、部分的にWeb Componentsを使と言うことが可能
またWeb Components時代になってもコンポーネントとコンポーネントをつなぐ
必要がある。ここにjQueryは使うことができる。
コンポーネントが見つからない場合、今までどおりjQueryを使うこともできる
混ぜて使うことが可能。これがjQueryの大きなメリット
2018/03/31(土) 00:30:49.88ID:???
jqの配信終わったら即死じゃん
2018/03/31(土) 07:29:59.18ID:???
カスタムタグとかカスタムエレメントとかウェブコンポーネントとか
正直全部どうでもいい
そんなのより
全部のブラウザでasync/await使えるようにしてくれよ
いつだよ
正直全部どうでもいい
そんなのより
全部のブラウザでasync/await使えるようにしてくれよ
いつだよ
2018/03/31(土) 08:00:50.34ID:???
IEが死ぬのを期待した方がまだ早い
2018/03/31(土) 10:13:55.52ID:???
>>725
babel使え
babel使え
2018/03/31(土) 13:27:22.99ID:???
期待せずに死んだものとして触らないのも手段だぞ
2018/03/31(土) 14:16:59.43ID:???
2018/03/31(土) 14:29:55.59ID:???
urlにおもいっきりJavascriptライブラリって書いてあるやんけ。
しいていうならJavascriptは永久に100%
Javascriptはお釈迦さま。てのひらの上で一番うまく踊れるのが誰か競ってるのがライブラリ。
しいていうならJavascriptは永久に100%
Javascriptはお釈迦さま。てのひらの上で一番うまく踊れるのが誰か競ってるのがライブラリ。
2018/03/31(土) 14:38:57.00ID:???
>>730
ブラウザがお釈迦様。手のひらの上で踊らされてるのがフロントエンドエンジニア。
ブラウザがお釈迦様。手のひらの上で踊らされてるのがフロントエンドエンジニア。
2018/03/31(土) 14:56:18.13ID:???
>>730
リンク先には各ライブラリのシェアだけではなく
ライブラリを使わないというNoneもはいってるよ
だから正確には、どのライブラリ or ライブラリを使わないで競ってることになる
ライブラリを使わないっていうのは素のJavaScriptを使うという意味だ
お前が言うJavaScriptはライブラリを使わないという意味じゃなかったのか?
それともjQueryを使っていてもJavaScript100%に含まれる
(だからこのスレの話題としてOKってことか)
Noneの割合は年々減っている。現在は23.7%。
最近は一年で1%減るぐらいのペース
jQueryはその逆で一年で1%増えるぐらいのペース
リンク先には各ライブラリのシェアだけではなく
ライブラリを使わないというNoneもはいってるよ
だから正確には、どのライブラリ or ライブラリを使わないで競ってることになる
ライブラリを使わないっていうのは素のJavaScriptを使うという意味だ
お前が言うJavaScriptはライブラリを使わないという意味じゃなかったのか?
それともjQueryを使っていてもJavaScript100%に含まれる
(だからこのスレの話題としてOKってことか)
Noneの割合は年々減っている。現在は23.7%。
最近は一年で1%減るぐらいのペース
jQueryはその逆で一年で1%増えるぐらいのペース
2018/03/31(土) 14:57:49.07ID:???
正直手のひらの上で踊らされてるのは、
流行りものに流されっぱなしの
JavaScripterだけな気がするw
jQuery使いはストイックだよ
もう10年も踊ってない
流行りものに流されっぱなしの
JavaScripterだけな気がするw
jQuery使いはストイックだよ
もう10年も踊ってない
2018/03/31(土) 14:57:59.58ID:???
ライブラリは言語に足りない部分を実現して
言語の未来の形を先取りしているものなので、お釈迦様というのは言い過ぎではないでしょうか?
ライブラリに先導されてJavaScriptはその後をヨチヨチと付いてきているのですから
むしろライブラリの方がお釈迦様的です
言語の未来の形を先取りしているものなので、お釈迦様というのは言い過ぎではないでしょうか?
ライブラリに先導されてJavaScriptはその後をヨチヨチと付いてきているのですから
むしろライブラリの方がお釈迦様的です
2018/03/31(土) 15:03:09.84ID:???
ライブラリはjavascriptで実現可能なことしか実現できない。
javascriptで書かれてるからなw
javascriptで書かれてるからなw
2018/03/31(土) 15:05:49.53ID:???
高級言語はアセンブラで実現可能なことしか実現できない。
できることと言ったら実現可能なことを、早く安く作れるだけだ
ライブラリもそれと同じ
こればっかりはアセンブラでは実現できないw
できることと言ったら実現可能なことを、早く安く作れるだけだ
ライブラリもそれと同じ
こればっかりはアセンブラでは実現できないw
2018/03/31(土) 18:25:49.15ID:???
イベントリスナが効かなくなったのでおかしいな~と思っていたのですが
ready前にイベントリスナをDOMに直接登録していたからでした
逆に言うとイベントをデレゲーションする場合は
readyをいちいち待たずに登録処理を始めていいということでしょうか?
ready前にイベントリスナをDOMに直接登録していたからでした
逆に言うとイベントをデレゲーションする場合は
readyをいちいち待たずに登録処理を始めていいということでしょうか?
2018/03/31(土) 19:26:18.25ID:???
>>732
その None にはスクリプトすら使わないというのは入っているのかな?
その None にはスクリプトすら使わないというのは入っているのかな?
2018/03/31(土) 23:42:03.80ID:???
コピペしてやったから
あっちいけ
+ JavaScript & jQuery 質問用スレッド vol.8 +
https://mevius.5ch.net/test/read.cgi/hp/1510321470/l50
あらし行為はやめろ
あっちいけ
+ JavaScript & jQuery 質問用スレッド vol.8 +
https://mevius.5ch.net/test/read.cgi/hp/1510321470/l50
あらし行為はやめろ
2018/04/01(日) 01:14:26.11ID:???
https://w3techs.com/technologies/history_overview/javascript_library/all
ここ二ヶ月の間73.2%から増えてないから
とうとう上げ止まったか?と思ったら今月73.3%になった
よかった。jQueryの利用者はまだ増え続けてたんだ。
ここ二ヶ月の間73.2%から増えてないから
とうとう上げ止まったか?と思ったら今月73.3%になった
よかった。jQueryの利用者はまだ増え続けてたんだ。
2018/04/01(日) 01:14:46.06ID:???
2018/04/01(日) 01:16:27.24ID:???
>>741
調査方法は以下に書いてますね
https://w3techs.com/faq
> 調査方法載ってないデータはクソ
あなたの主張からすると調査方法載ってるので
クソではないということになりました。
英語わからないならGoogle翻訳使うといいですよ。
> どの技術がサイトで使用されているかをどのように知っていますか?
>
> 主に、Webページのダウンロード時にサイト自体が提供する情報を使用します。
> 言い換えれば、私たちは検索エンジンのようなWebページを取得し、その結果を分析します。
> さらに、Alexa、Google、Microsoft、ipinfo.ioなどのソースから公に入手可能な情報を使用しています 。
調査方法は以下に書いてますね
https://w3techs.com/faq
> 調査方法載ってないデータはクソ
あなたの主張からすると調査方法載ってるので
クソではないということになりました。
英語わからないならGoogle翻訳使うといいですよ。
> どの技術がサイトで使用されているかをどのように知っていますか?
>
> 主に、Webページのダウンロード時にサイト自体が提供する情報を使用します。
> 言い換えれば、私たちは検索エンジンのようなWebページを取得し、その結果を分析します。
> さらに、Alexa、Google、Microsoft、ipinfo.ioなどのソースから公に入手可能な情報を使用しています 。
2018/04/01(日) 01:17:22.96ID:???
> あなたのウェブサイトアナライザはどのくらい正確に機能しますか?
>
> ウイルススキャナがファイルを検索してウイルスを特定する方法と同様に、
> 技術の使用を特定する特定のパターンをWebページで検索します。この検索には、
> 正規表現とDOMトラバーサルの組み合わせを使用します。私たちは、
> テクノロジーの使用に関する数千の指標を特定しました。これらの指標は異なる優先順位を持ち、
> 具体的な状況における指標の特定の組み合わせの有無に基づいて、我々は結論に至る。
> これらは、指標によって使用される情報の例です。
>
> ウェブページのHTML要素
> 特定のHTMLタグ(ジェネレータのメタタグなど)
> JavaScriptコード
> CSSコード
> サイトのURL構造
> オフサイトリンク
> HTTPヘッダー(Cookieなど)
> 特定の要求に対するHTTP応答(圧縮など)
> アナライザーを構築するためには多くの研究が必要でしたが、
> 私たちは常にそれを改善し続けています。可能な限り最高のウェブサイトアナライザにしたいと考えています。
>
> ウイルススキャナがファイルを検索してウイルスを特定する方法と同様に、
> 技術の使用を特定する特定のパターンをWebページで検索します。この検索には、
> 正規表現とDOMトラバーサルの組み合わせを使用します。私たちは、
> テクノロジーの使用に関する数千の指標を特定しました。これらの指標は異なる優先順位を持ち、
> 具体的な状況における指標の特定の組み合わせの有無に基づいて、我々は結論に至る。
> これらは、指標によって使用される情報の例です。
>
> ウェブページのHTML要素
> 特定のHTMLタグ(ジェネレータのメタタグなど)
> JavaScriptコード
> CSSコード
> サイトのURL構造
> オフサイトリンク
> HTTPヘッダー(Cookieなど)
> 特定の要求に対するHTTP応答(圧縮など)
> アナライザーを構築するためには多くの研究が必要でしたが、
> 私たちは常にそれを改善し続けています。可能な限り最高のウェブサイトアナライザにしたいと考えています。
2018/04/01(日) 01:18:18.72ID:???
> あなたの情報はどれくらい正確ですか?
>
> 彼らが望むのであれば、ウェブサイトはほとんどの技術を隠すことができるため、
> このタイプの調査は100%正確であることは不可能です。
> 詳細については、免責事項も参照してください。テクノロジーの識別に何らかの
> エラーを起こさないよう確実にする方法はありません。偽陽性と偽陰性の
> バランスをとる方法を見つけようと試みます(できるだけ多くを削除した後)、
> 残りのエラーは他の技術よりもむしろ一つの技術に集中しないようにします。
> 私たちの目標は、最も正確で信頼性の高いWeb技術調査を提供することです。
> その結果、この質問に対する答えは、可能な限り正確です。我々は、
> 私たちがその目標からあまり遠く離れていないと信じています。
ここまで言ってるからUser Agent使って判断みたいな
単純なことはしてないでしょうね
>
> 彼らが望むのであれば、ウェブサイトはほとんどの技術を隠すことができるため、
> このタイプの調査は100%正確であることは不可能です。
> 詳細については、免責事項も参照してください。テクノロジーの識別に何らかの
> エラーを起こさないよう確実にする方法はありません。偽陽性と偽陰性の
> バランスをとる方法を見つけようと試みます(できるだけ多くを削除した後)、
> 残りのエラーは他の技術よりもむしろ一つの技術に集中しないようにします。
> 私たちの目標は、最も正確で信頼性の高いWeb技術調査を提供することです。
> その結果、この質問に対する答えは、可能な限り正確です。我々は、
> 私たちがその目標からあまり遠く離れていないと信じています。
ここまで言ってるからUser Agent使って判断みたいな
単純なことはしてないでしょうね
2018/04/01(日) 01:21:42.58ID:???
わざわざjqueryスレの書き込みを転載コピペしてまでここでやる根性に脱帽
2018/04/01(日) 01:40:23.67ID:???
もう5年以上同じようなことやってるからライフワークなんだろ
2018/04/01(日) 02:43:13.83ID:???
https://w3techs.com/technologies/history_overview/javascript_library
マーケットシェアは下降してますがね
マーケットシェアは下降してますがね
2018/04/01(日) 03:07:44.92ID:???
>>747
マーケットシェア、96.1%もあるんだが・・・
減ったと言っても一年で0.2%
これだと半分以下になるまで何年かかることやら
それよりか、0.8%しかなく一年で0.1%しか増えてないReact、
0.6%しかなく同じく一年で0.1%しか増えてないAngularを
心配したほうが良くないか?
マーケットシェア、96.1%もあるんだが・・・
減ったと言っても一年で0.2%
これだと半分以下になるまで何年かかることやら
それよりか、0.8%しかなく一年で0.1%しか増えてないReact、
0.6%しかなく同じく一年で0.1%しか増えてないAngularを
心配したほうが良くないか?
2018/04/01(日) 03:13:24.04ID:???
2018/04/01(日) 03:28:18.32ID:???
> lodashよりunderscoreの方が人気なのも意外
Underscoreの方がオリジナルだからね。
そもそもBackboneのためのライブラリみたいなもんだから
Backboneでも使われてる
Underscoreの方がオリジナルだからね。
そもそもBackboneのためのライブラリみたいなもんだから
Backboneでも使われてる
2018/04/01(日) 04:21:44.05ID:???
証拠なし根拠なしだから論証にすらなっていないので反論の必要がない
データを否定するもなにも
w3techsのはデータじゃなくて妄想
それを根拠に語るお前も妄想
データを否定するもなにも
w3techsのはデータじゃなくて妄想
それを根拠に語るお前も妄想
2018/04/01(日) 04:28:20.37ID:???
>>751
w3techsはちゃんと根拠書いてますよ?
お前「地球は太陽の周りなんか回ってない」
ガリレオ「証拠あります。地球は回っています」
お前「それは証拠じゃない。お前の妄想だ」
ガリレオ(考えられる脳みそないのかな?)
ガリレオ「じゃあ太陽が回っているという根拠は?」
お前「お前の妄想が間違いなんだから、太陽は回ってる」
ガリレオ「いや聞いてるのは太陽が回っているという証拠ですよ?」
お前「地球が回ってる=お前の妄想=それが間違いということは太陽が回ってることだろ!」
ガリレオ(論理的に考えられる脳みそないのかな?)
ガリレオ「太陽が回っているという証拠はないんですね?」
お前「お前が間違ってるのが証拠だ!」
w3techsはちゃんと根拠書いてますよ?
お前「地球は太陽の周りなんか回ってない」
ガリレオ「証拠あります。地球は回っています」
お前「それは証拠じゃない。お前の妄想だ」
ガリレオ(考えられる脳みそないのかな?)
ガリレオ「じゃあ太陽が回っているという根拠は?」
お前「お前の妄想が間違いなんだから、太陽は回ってる」
ガリレオ「いや聞いてるのは太陽が回っているという証拠ですよ?」
お前「地球が回ってる=お前の妄想=それが間違いということは太陽が回ってることだろ!」
ガリレオ(論理的に考えられる脳みそないのかな?)
ガリレオ「太陽が回っているという証拠はないんですね?」
お前「お前が間違ってるのが証拠だ!」
2018/04/01(日) 07:26:15.36ID:???
お人形さん遊びかな?w
2018/04/01(日) 09:25:19.92ID:???
そういやwappalyzerでもほとんど見たことないもんな
angularとか
angularとか
2018/04/01(日) 09:58:45.37ID:???
jq信者のエイプリルフールってことやな!
2018/04/01(日) 10:02:32.53ID:???
emberっていうのは見る
アップルのサイトがそれ
アップルのサイトがそれ
2018/04/01(日) 10:11:05.24ID:???
最近のモダンJSフレームワークがほとんど使われてないとしても
パラダイムが新しいのは確かですし、今後の流れがそっちに行くのも確かなので
勉強しておくに越したことはないですね?
パラダイムが新しいのは確かですし、今後の流れがそっちに行くのも確かなので
勉強しておくに越したことはないですね?
2018/04/01(日) 13:45:14.69ID:???
勉強しないと上手く扱えないフレームワークとか本末転倒だから
2018/04/01(日) 16:46:39.69ID:???
indexedDB使ったことある人いる?
あったら感想きかせて
面倒くさいとか、かんたんとか、ライブラリ使ったほうが良いとか。
なんでもいいのので
あったら感想きかせて
面倒くさいとか、かんたんとか、ライブラリ使ったほうが良いとか。
なんでもいいのので
2018/04/01(日) 16:56:24.41ID:???
主にトップページしか検索の対象にしてないってかいてるやんw
クソデータ決定だなw
クソデータ決定だなw
2018/04/01(日) 16:56:40.67ID:???
ほらな。だから日本語に翻訳してコピペする必要があるんだよ(苦笑)
しっかり書いてある。英語を読まないから見つけられない
> あなたはホームページだけ、あるいは内部のページだけを分析しますか?
>
> それはサイトについて既に知っているものに依存します。
> しばしばそれはホームページでしかありません。
> 多くの場合、我々はより深くクロールします。
しっかり書いてある。英語を読まないから見つけられない
> あなたはホームページだけ、あるいは内部のページだけを分析しますか?
>
> それはサイトについて既に知っているものに依存します。
> しばしばそれはホームページでしかありません。
> 多くの場合、我々はより深くクロールします。
2018/04/01(日) 16:56:57.06ID:???
> Do you analyze only the home page or also inner pages?
>
> That depends on what we know already about the site.
> Often it's only the home page, in many cases we crawl deeper.
なお翻訳前の英語。短いから手動で訳してあげると
あなたはホームページだけを解析しますか? それとも内部のメージも?
私達がすでに知っているサイトの内容に依存します。
しばしば、それはホームページだけですが、多くの場合、私達は深くクロールします。
>
> That depends on what we know already about the site.
> Often it's only the home page, in many cases we crawl deeper.
なお翻訳前の英語。短いから手動で訳してあげると
あなたはホームページだけを解析しますか? それとも内部のメージも?
私達がすでに知っているサイトの内容に依存します。
しばしば、それはホームページだけですが、多くの場合、私達は深くクロールします。
2018/04/01(日) 17:02:17.48ID:???
比率は何対何かぜんぜん分からんなこれ。計測仕様もクソもない
2018/04/01(日) 17:03:50.04ID:???
2018/04/01(日) 17:04:21.96ID:???
jQueryキチガイが湧いとるなw
2018/04/01(日) 17:05:39.24ID:???
>>757
> 最近のモダンJSフレームワークがほとんど使われてないとしても
> パラダイムが新しいのは確かですし、今後の流れがそっちに行くのも確かなので
> 勉強しておくに越したことはないですね?
俺の経験から言うと、Backboneが一時期はやったが
俺がまともに勉強する前に消えた
Knockoutも使う前に消えたな
Angular1は仕事で使うから勉強したんだが
名前こそAngularだがコードの書き方は
まったく違ったものになってしまった
これらは2014年ごろ、主流のJavaScriptフレームワークだったものだ
https://qiita.com/takuhito-h/items/15655309aef0889cfb62
https://qiita.com/icoxfog417/items/3c68e1a4de7121658e29
2014年当時は今(非比較的)よく使われてるフレームワークは
生まれてないから生まれて間もない状況
何が言いたいかと言うと、今は新しいパラダイムが普及する前に
更に新しいパラダイムが出てる状況なんだよ
つまり将来主流になるパラダイムは、まだ世の中に生まれてない可能性が高いってこと
そんな中10年以上も生き残ってるのはjQueryだけだったりする
> 最近のモダンJSフレームワークがほとんど使われてないとしても
> パラダイムが新しいのは確かですし、今後の流れがそっちに行くのも確かなので
> 勉強しておくに越したことはないですね?
俺の経験から言うと、Backboneが一時期はやったが
俺がまともに勉強する前に消えた
Knockoutも使う前に消えたな
Angular1は仕事で使うから勉強したんだが
名前こそAngularだがコードの書き方は
まったく違ったものになってしまった
これらは2014年ごろ、主流のJavaScriptフレームワークだったものだ
https://qiita.com/takuhito-h/items/15655309aef0889cfb62
https://qiita.com/icoxfog417/items/3c68e1a4de7121658e29
2014年当時は今(非比較的)よく使われてるフレームワークは
生まれてないから生まれて間もない状況
何が言いたいかと言うと、今は新しいパラダイムが普及する前に
更に新しいパラダイムが出てる状況なんだよ
つまり将来主流になるパラダイムは、まだ世の中に生まれてない可能性が高いってこと
そんな中10年以上も生き残ってるのはjQueryだけだったりする
2018/04/01(日) 17:09:26.76ID:???
2018/04/01(日) 17:11:46.74ID:???
依存患者を量産するのが生き残る秘訣
2018/04/01(日) 17:14:05.13ID:???
>>759
これが必要な場面のほとんどは鯖側でやったほうが楽で健全という結論
これが必要な場面のほとんどは鯖側でやったほうが楽で健全という結論
2018/04/01(日) 17:14:08.40ID:???
2018/04/01(日) 17:16:36.48ID:???
>>769
なんとかクライアントでやりたいです。
なんとかクライアントでやりたいです。
2018/04/01(日) 17:18:53.01ID:???
>>770
一番かどうかは知らん。ポイントは生で使うより断然簡単になるか、やたら容量増えないか、遅くならないか、かな。
至れり尽くせりの重いライブラリでもいいのか、薄いラッパーがいいのかは用途と好みだろ。
一番かどうかは知らん。ポイントは生で使うより断然簡単になるか、やたら容量増えないか、遅くならないか、かな。
至れり尽くせりの重いライブラリでもいいのか、薄いラッパーがいいのかは用途と好みだろ。
2018/04/01(日) 17:20:41.24ID:???
>>771
参考までに、なんで?
参考までに、なんで?
2018/04/01(日) 17:23:45.39ID:???
>>771
サーバーと同期したいならPouchDBとかいいぞ!クライアント側はindexedDBが使われてるぞ!
サーバーと同期したいならPouchDBとかいいぞ!クライアント側はindexedDBが使われてるぞ!
2018/04/01(日) 20:37:41.16ID:???
>>759
今だったらPromise化してasync/awaitでやりたいと思うだろうが
イベントループ挟むとセッションが切れるのと、
特殊コールバックのせいで単純なPromise化ができないっていうのが一番のネック
パラメータも構造に依存したりするので構造化もしにくい
今だったらPromise化してasync/awaitでやりたいと思うだろうが
イベントループ挟むとセッションが切れるのと、
特殊コールバックのせいで単純なPromise化ができないっていうのが一番のネック
パラメータも構造に依存したりするので構造化もしにくい
776Name_Not_Found
2018/04/01(日) 21:38:31.71ID:FmwDfjO/ >>713で
> ここ二ヶ月の間73.2%から増えてないから
> とうとう上げ止まったか?と思ったら今月73.3%になった
> よかった。jQueryの利用者はまだ増え続けてたんだ。
ということだったが、正確には今月(4月)ではなく
3月終わり頃のデータだった。
https://w3techs.com/technologies/history_overview/javascript_library/all
今見てみたら4/1で更新されており、73.4%に増えていたよ。
> ここ二ヶ月の間73.2%から増えてないから
> とうとう上げ止まったか?と思ったら今月73.3%になった
> よかった。jQueryの利用者はまだ増え続けてたんだ。
ということだったが、正確には今月(4月)ではなく
3月終わり頃のデータだった。
https://w3techs.com/technologies/history_overview/javascript_library/all
今見てみたら4/1で更新されており、73.4%に増えていたよ。
2018/04/01(日) 21:40:02.72ID:???
>>775
> 特殊コールバックのせいで単純なPromise化ができないっていうのが一番のネック
逆、イベント(コールバック)っていうのは大部分が
Promise化できないもので、一部の特殊なものだけがPromise化できる
Promise化できる方が珍しいんだよ
> 特殊コールバックのせいで単純なPromise化ができないっていうのが一番のネック
逆、イベント(コールバック)っていうのは大部分が
Promise化できないもので、一部の特殊なものだけがPromise化できる
Promise化できる方が珍しいんだよ
2018/04/01(日) 21:41:51.58ID:???
いつからjavascriptのライブラリのシェアをウォッチするスレになったのか。
ほんとjQueryバカは各スレでやりたい放題で程度が低い。
崩壊学級の小学生みたいだ。
ほんとjQueryバカは各スレでやりたい放題で程度が低い。
崩壊学級の小学生みたいだ。
2018/04/01(日) 21:44:45.05ID:???
JavaScript(None = ライブラリを使ってない)のシェアをウォッチするスレですよw
2018/04/01(日) 21:52:58.05ID:???
ライブラリを使うということはライブラリが書かれている言語を間接的に使うということ。コンパイル言語ではないのだから、その言語は唯一、Javascriptのみ…!
2018/04/01(日) 21:59:09.73ID:???
jQuery信奉者はキチガイがおおいみたいね
2018/04/01(日) 23:24:21.55ID:???
信奉者も何もこのシェアだと使ってない方が異端だろう
2018/04/02(月) 00:10:36.01ID:???
何、ライブラリの話?別スレ行ってくれないかな?w
2018/04/02(月) 00:26:33.70ID:???
信奉者だから
使ってる使ってないじゃないから
日本語も分からんバカなのか
使ってる使ってないじゃないから
日本語も分からんバカなのか
2018/04/02(月) 00:28:44.03ID:???
もっと正確に言うと
スレ違いのスレで再三やめろといわれてのにしつこくあらし行為を行うレベルでJQueryの話題を出すキチガイな。
スレ違いのスレで再三やめろといわれてのにしつこくあらし行為を行うレベルでJQueryの話題を出すキチガイな。
2018/04/02(月) 10:35:55.95ID:???
その中で重めの非同期処理をするイベントリスナがあり、
処理中には同じイベントが発生して欲しくはありません
これをスマートに書くにはどうしたらいいでしょうか?
簡単なやり方は、イベントリスナの外にフラグになる変数を用意しておいて、
イベントリスナの中でそのフラグを立てて排他的に処理するという方法ですが
外に変数を設置するのはイケてない気がしますし
一度に一度しか呼び出せない関数を、もっとスマートに作る方法がありそうな気がします
どういうものでしょうか?
処理中には同じイベントが発生して欲しくはありません
これをスマートに書くにはどうしたらいいでしょうか?
簡単なやり方は、イベントリスナの外にフラグになる変数を用意しておいて、
イベントリスナの中でそのフラグを立てて排他的に処理するという方法ですが
外に変数を設置するのはイケてない気がしますし
一度に一度しか呼び出せない関数を、もっとスマートに作る方法がありそうな気がします
どういうものでしょうか?
2018/04/02(月) 10:36:49.23ID:???
「イベントが発生して欲しくはありません」と書きましたが
イベントは発生してもいいですね
その中で排他処理をスマートにしたいのです
イベントは発生してもいいですね
その中で排他処理をスマートにしたいのです
2018/04/02(月) 12:45:21.21ID:???
>外に変数を設置するのはイケてない気がしますし
要件で考えりゃいいだろ
イケてるイケてないって考えを捨てろ
要件で考えりゃいいだろ
イケてるイケてないって考えを捨てろ
2018/04/02(月) 12:53:47.18ID:???
2018/04/02(月) 12:55:30.71ID:???
>>786
イベントリスナをオプションでonceにして、処理が完了したら登録し直しは駄目なん?
イベントリスナをオプションでonceにして、処理が完了したら登録し直しは駄目なん?
2018/04/02(月) 12:58:45.00ID:???
オブジェクトオブザーバブルってなかったことリスト行きしたんじゃなかったっけ?
792Name_Not_Found
2018/04/02(月) 14:36:32.02ID:41m4qg1d 警察と創価、在日マフィアによる集団ストーカーの証拠動画
(警察車両ナンバー入り/)
https://www.youtube.com/watch?v=gTOBN1AkSz0
https://www.youtube.com/watch?v=bbPcpPwO3ug
https://www.youtube.com/watch?v=de1jeSPGGNo
怖ろしくてお漏らししそう´・ω・`
(警察車両ナンバー入り/)
https://www.youtube.com/watch?v=gTOBN1AkSz0
https://www.youtube.com/watch?v=bbPcpPwO3ug
https://www.youtube.com/watch?v=de1jeSPGGNo
怖ろしくてお漏らししそう´・ω・`
2018/04/02(月) 15:25:30.59ID:???
>>790
実は最初に考えたのが、イベントリスナの一時的な付け外しでしたが
なんかうまくできなかったのです・・
結局、select要素のonchangeイベントだったので
select要素をdisableにするという簡単な形で無効にしました
ありがとうございました
実は最初に考えたのが、イベントリスナの一時的な付け外しでしたが
なんかうまくできなかったのです・・
結局、select要素のonchangeイベントだったので
select要素をdisableにするという簡単な形で無効にしました
ありがとうございました
2018/04/02(月) 17:42:09.21ID:???
なんだそれ感
2018/04/02(月) 19:27:56.13ID:???
>>791
Observable != Object.observe
Observable != Object.observe
2018/04/02(月) 20:32:41.73ID:???
2018/04/02(月) 22:30:17.05ID:???
かなり前からcorejsにpolyfill入ってるやつ
2018/04/03(火) 14:23:44.32ID:???
解釈の原因は解釈者が持つ自分ルール。解釈の自由は責任を伴う
言葉風紀世相の乱れはそう感じる人の心の乱れの自己投影。人は鏡
憤怒は一時の狂気、無知無能の自己証明。中途半端な知識主ほど激昂
「真実は一つ」は錯誤。執着する者ほど矛盾を体験(争い煩悩)
他人に不自由(制約)を与えれば己も不自由(不快)を得る
問題解決力の乏しい者ほど自己防衛の為に礼儀作法マナーを要求
情報分析力の低い者ほどデマ宗教フェイク疑似科学に感化洗脳
自己肯定感の欠けた者ほど「己の知見こそ全で真」に自己陶酔
人生経験の少ない者ほど嫌いキモイ怖いウザイ憎い想定外を体験
キリスト教は世界最大のカルト。聖書は史上最も売れているト本
全ては必然。偶然 奇跡 理不尽 不条理は思考停止 視野狭窄の産物
人生存在現象に元々意味価値理由目的義務使命はない
宗教民族領土貧困は争いの原因ではなく口実動機言訳(原因帰属錯覚)
虐め差別犯罪テロ紛争は根絶可能。必要なのは適切十分な高度教育
体罰は指導力問題解決力の乏しい教育素人の独善甘え怠慢責任転嫁
死刑は民度の低い排他的集団リンチ殺人。「死ねば償える」は偽善
核武装論は人間不信と劣等感に苛まれた臆病な外交素人の精神安定剤
投票率低下は社会成熟の徴候。奇人変人の当選は議員数過多の証左
感情自己責任論 ~学校では教えない合理主義哲学~ m9`・ω・)
言葉風紀世相の乱れはそう感じる人の心の乱れの自己投影。人は鏡
憤怒は一時の狂気、無知無能の自己証明。中途半端な知識主ほど激昂
「真実は一つ」は錯誤。執着する者ほど矛盾を体験(争い煩悩)
他人に不自由(制約)を与えれば己も不自由(不快)を得る
問題解決力の乏しい者ほど自己防衛の為に礼儀作法マナーを要求
情報分析力の低い者ほどデマ宗教フェイク疑似科学に感化洗脳
自己肯定感の欠けた者ほど「己の知見こそ全で真」に自己陶酔
人生経験の少ない者ほど嫌いキモイ怖いウザイ憎い想定外を体験
キリスト教は世界最大のカルト。聖書は史上最も売れているト本
全ては必然。偶然 奇跡 理不尽 不条理は思考停止 視野狭窄の産物
人生存在現象に元々意味価値理由目的義務使命はない
宗教民族領土貧困は争いの原因ではなく口実動機言訳(原因帰属錯覚)
虐め差別犯罪テロ紛争は根絶可能。必要なのは適切十分な高度教育
体罰は指導力問題解決力の乏しい教育素人の独善甘え怠慢責任転嫁
死刑は民度の低い排他的集団リンチ殺人。「死ねば償える」は偽善
核武装論は人間不信と劣等感に苛まれた臆病な外交素人の精神安定剤
投票率低下は社会成熟の徴候。奇人変人の当選は議員数過多の証左
感情自己責任論 ~学校では教えない合理主義哲学~ m9`・ω・)
2018/04/03(火) 15:07:41.70ID:???
後ろに書かれている関数は呼び出せるのに
後ろに書かれているクラスはnew出来ないのは何故ですか?
あほなのでしょうか?
後ろに書かれているクラスはnew出来ないのは何故ですか?
あほなのでしょうか?
2018/04/03(火) 16:07:03.91ID:???
俺もその仕様でえっ?てなった。
ホイスティング理解できないバカに合わせた結果。
今からでもfunction宣言と合わせて欲しいぜ
ホイスティング理解できないバカに合わせた結果。
今からでもfunction宣言と合わせて欲しいぜ
2018/04/03(火) 18:28:01.77ID:???
確かに今から変更しても
よほど変なコードを書いていない限り問題も出ないでしょうし
変えて欲しいですね
よほど変なコードを書いていない限り問題も出ないでしょうし
変えて欲しいですね
2018/04/03(火) 19:21:14.40ID:???
そもそも関数のときからホイスティングが嫌なら宣言文じゃなく宣言式使って変数に代入すりゃいいだけだったんだ。
クラスだってせっかく文・式両方用意しといて何やってんだと思った。
確かに機能的には困るものではないが、ソースファイル上のコードレイアウトが無意味に制限されるよね。
あほに合わせたせいで。
関数でもクラスでもいいけど、詳細な実装は下に置いといて、上から抽象度の高いコードをサッと読めるってレイアウト好きなやついるだろ。
もしかしたらダメだと言うやつもいるかもしれんがその是非は問題じゃない。なんでそれを言語仕様で制限されんとならんのじゃということ。
クラスだってせっかく文・式両方用意しといて何やってんだと思った。
確かに機能的には困るものではないが、ソースファイル上のコードレイアウトが無意味に制限されるよね。
あほに合わせたせいで。
関数でもクラスでもいいけど、詳細な実装は下に置いといて、上から抽象度の高いコードをサッと読めるってレイアウト好きなやついるだろ。
もしかしたらダメだと言うやつもいるかもしれんがその是非は問題じゃない。なんでそれを言語仕様で制限されんとならんのじゃということ。
2018/04/03(火) 19:25:23.17ID:???
今日なんか嫌なことあったの?
2018/04/03(火) 19:59:06.59ID:???
勢いというか思想というか、が強すぎてちょっと引くけど
>詳細な実装は下に置いといて、上から抽象度の高いコードをサッと読めるってレイアウト好きなやつ
はい
好きです
>詳細な実装は下に置いといて、上から抽象度の高いコードをサッと読めるってレイアウト好きなやつ
はい
好きです
2018/04/03(火) 21:09:26.80ID:???
jQueryでなんとかならないのでしょうか?>クラス
2018/04/03(火) 21:11:50.02ID:???
あのーjQueryってDOM操作用ライブラリなんですけど。
最近は調子にのって盛り込んだ本分と関係ない便利機能はコアから取り除いていってるんですけど。
最近は調子にのって盛り込んだ本分と関係ない便利機能はコアから取り除いていってるんですけど。
2018/04/03(火) 22:55:20.18ID:???
調子に乗って盛り込んだわけじゃなくて、昔はCSSのアニメーションとかなかったし
Ajax周りの互換性がブラウザごとになくて、必要だから入れたんだよ
Ajax周りの互換性がブラウザごとになくて、必要だから入れたんだよ
2018/04/03(火) 23:00:46.04ID:???
>詳細な実装は下に置いといて、上から抽象度の高いコードをサッと読めるってレイアウト好きなやつ
いや、普通に考えると、1クラスで1ファイルにして、
それをimportするのが普通なので、そもそもやり方が悪いとしか
いや、普通に考えると、1クラスで1ファイルにして、
それをimportするのが普通なので、そもそもやり方が悪いとしか
2018/04/03(火) 23:18:01.65ID:???
まあ確かにimport使って話だなw
でもimportはIEは言うまでもなく、Firefoxは現在の59は対応してないし(次の60から対応する)
Androidも最新以外は対応してないという状況だから
スマホ・タブレット対応するならきついだろう。
だからといって諦める必要はなく、そこででてくるのがbabelなわけ
babelを使ってビルドしてしまえば古いブラウザでも対応できる
でもimportはIEは言うまでもなく、Firefoxは現在の59は対応してないし(次の60から対応する)
Androidも最新以外は対応してないという状況だから
スマホ・タブレット対応するならきついだろう。
だからといって諦める必要はなく、そこででてくるのがbabelなわけ
babelを使ってビルドしてしまえば古いブラウザでも対応できる
2018/04/03(火) 23:19:08.06ID:???
それが普通だとは思いませんでした
みんなインポートっていうのを使ってるんですか?
みんなインポートっていうのを使ってるんですか?
2018/04/03(火) 23:30:23.87ID:???
俺はずっと前からモジュール使ってるな。
メンテナンス性をあげようと思ったらファイルに分けるのが普通だし、
昔から <script>を複数書いてたでしょ?
それも多くなりパフォーマンスが気になりだしたから
ファイル結合から始まって、最終的にモジュールにして
webpackとかでビルドするようになったな
メンテナンス性をあげようと思ったらファイルに分けるのが普通だし、
昔から <script>を複数書いてたでしょ?
それも多くなりパフォーマンスが気になりだしたから
ファイル結合から始まって、最終的にモジュールにして
webpackとかでビルドするようになったな
2018/04/04(水) 01:35:29.11ID:???
勉強してみます
ありがとうございました
ありがとうございました
2018/04/04(水) 02:46:04.62ID:???
lodashのdelay関数がsetTimeoutより優れている部分は何ですか?
2018/04/04(水) 03:09:42.01ID:???
setTimeoutが発動する前に同じ種類のsetTimeoutを実行しようとしたら
前の分はキャンセルする
という処理をしたいのですが
一番いい方法はどういうものでしょうか?
lodashのdelayはそういう機能を追加してるんじゃないかとも思ったのですが
ほとんどsetTimeoutと同じっぽいですね
前の分はキャンセルする
という処理をしたいのですが
一番いい方法はどういうものでしょうか?
lodashのdelayはそういう機能を追加してるんじゃないかとも思ったのですが
ほとんどsetTimeoutと同じっぽいですね
2018/04/04(水) 03:22:36.57ID:???
setTimeoutやdelayの第三引数にchannelを指定したら
その前の同名channelのタイマーはキャンセルするみたいなイメージです
その前の同名channelのタイマーはキャンセルするみたいなイメージです
2018/04/04(水) 06:16:51.16ID:???
ちょとラップして書けばいいだけじゃん
timeridと種類関連付けてmapで持っておけばいいだけなんだから
timeridと種類関連付けてmapで持っておけばいいだけなんだから
2018/04/04(水) 07:07:02.71ID:???
2018/04/04(水) 09:14:18.60ID:???
間引く髪の毛も無いクセに・・・
2018/04/04(水) 09:24:00.40ID:???
「表のセルをクリックしたらその列のヘッダーセルの色を変える」とかjquery使わないと面倒くさくない?
2018/04/04(水) 10:16:38.42ID:???
2018/04/04(水) 23:55:48.60ID:???
>>819
> 「表のセルをクリックしたらその列のヘッダーセルの色を変える」とかjquery使わないと面倒くさくない?
面倒くさいだろうけどお題が小さいw
jQuery使って数行なら、jQuery使わなくても、その2倍ぐらいで書けるので
面倒くさくない、頑張ればできるって言いそうw
同じ2倍でも1000行と2000行じゃ大きな差なんだけどね
作ってみた
https://jsfiddle.net/rmhzz1c4/
jQueryで6行、jQuery使わないならその2倍で12行ぐらいかな?
(コードゴルフ的なのは禁止で)
> 「表のセルをクリックしたらその列のヘッダーセルの色を変える」とかjquery使わないと面倒くさくない?
面倒くさいだろうけどお題が小さいw
jQuery使って数行なら、jQuery使わなくても、その2倍ぐらいで書けるので
面倒くさくない、頑張ればできるって言いそうw
同じ2倍でも1000行と2000行じゃ大きな差なんだけどね
作ってみた
https://jsfiddle.net/rmhzz1c4/
jQueryで6行、jQuery使わないならその2倍で12行ぐらいかな?
(コードゴルフ的なのは禁止で)
2018/04/05(木) 00:06:06.28ID:???
classで切り替えるとして、これでいいの?
document.getElementById('targetTd').addEventListener( 'click', function(e){
var children = e.target.parentNode.getElementsByTagName('th')
for(var i=children.length-1; 0<=i; i-- )
children[i].classList.toggle('highlight');
}, false );
ほとんどの場合<th>は<tr>の最初にあるだろうから以下のほうが短い
document.getElementById('targetTd').addEventListener( 'click', function(e){
e.target.parentNode.firstElementChild.classList.toggle('highlight');
}, false );
document.getElementById('targetTd').addEventListener( 'click', function(e){
var children = e.target.parentNode.getElementsByTagName('th')
for(var i=children.length-1; 0<=i; i-- )
children[i].classList.toggle('highlight');
}, false );
ほとんどの場合<th>は<tr>の最初にあるだろうから以下のほうが短い
document.getElementById('targetTd').addEventListener( 'click', function(e){
e.target.parentNode.firstElementChild.classList.toggle('highlight');
}, false );
2018/04/05(木) 00:13:17.65ID:???
特定のtdではなく特定のテーブルや全テーブルの全部のtdだったら
documentやtable elementに対してaddEventListenerして、1行目でe.target.tagNameを見ればいいな
documentやtable elementに対してaddEventListenerして、1行目でe.target.tagNameを見ればいいな
2018/04/05(木) 00:18:49.92ID:???
>>822
動かん
ぱっと見でもクリックした列を判定するコードがないし
なんでchhildrenの後ろから探索してるのかも分からん
(コピペプログラマに見える)
classList.toggleしかしてないので同じ列をクリックするたびに
反転するだろうってのが容易に想像できる
e.targetがtdだとして、そのparentNodeはtrだ。
複数テーブルが有った場合は、まあもともとの要件には
入ってないが、対応しているとなお良い
これでいいの?って仕様を聞いてるのかと思ったら
書いたコードにバグがないの?って意味かよw
動かん
ぱっと見でもクリックした列を判定するコードがないし
なんでchhildrenの後ろから探索してるのかも分からん
(コピペプログラマに見える)
classList.toggleしかしてないので同じ列をクリックするたびに
反転するだろうってのが容易に想像できる
e.targetがtdだとして、そのparentNodeはtrだ。
複数テーブルが有った場合は、まあもともとの要件には
入ってないが、対応しているとなお良い
これでいいの?って仕様を聞いてるのかと思ったら
書いたコードにバグがないの?って意味かよw
2018/04/05(木) 00:20:13.08ID:???
>>822-823は行
行じゃなくて列なら確かにめんどい
colspanやrowspanがどうなってるかわからん
1つでもあれば盛大にズレるんで
確実なところでtd.dataset.に何か目印つけるな
これが一番健全だと思う
行じゃなくて列なら確かにめんどい
colspanやrowspanがどうなってるかわからん
1つでもあれば盛大にズレるんで
確実なところでtd.dataset.に何か目印つけるな
これが一番健全だと思う
2018/04/05(木) 00:20:29.38ID:???
これも元の要件に書いてないが、クリックしたらその列のヘッダーセルの
色を変えるとして、その他の列のヘッダーセルの色は解除だろって思う。
そのコードも入ってないな。
色を変えるとして、その他の列のヘッダーセルの色は解除だろって思う。
そのコードも入ってないな。
2018/04/05(木) 00:22:45.12ID:???
> colspanやrowspanがどうなってるかわからん
そんなの要件に入ってないだろ
そんな事を考える前に、まずちゃんと動くもの作れw
そんなの要件に入ってないだろ
そんな事を考える前に、まずちゃんと動くもの作れw
2018/04/05(木) 00:23:37.63ID:???
2018/04/05(木) 00:23:37.64ID:???
このように設計が重要かつもっとも時間がかかるものなのである
コーディングの時間の多寡を考えてはいけない
コーディングの時間の多寡を考えてはいけない
2018/04/05(木) 00:24:11.78ID:???
時間がかかるのは設計じゃねーよw
要件だろが
要件だろが
2018/04/05(木) 00:24:16.22ID:???
>>829
えっ
えっ
2018/04/05(木) 00:25:04.88ID:???
>>832
えじゃねーよw
えじゃねーよw
2018/04/05(木) 00:25:18.84ID:???
jqueryがDOM操作で大活躍!できるクソ曖昧な要件出してjqueryをageましょう
2018/04/05(木) 00:25:44.59ID:???
客から言われたわけでもないのに、勝手に仕様を
盛りだくさんにしていく馬鹿っているよなw
盛りだくさんにしていく馬鹿っているよなw
2018/04/05(木) 00:26:49.46ID:???
2018/04/05(木) 00:28:15.39ID:???
俺の要件推測は良い推測!
おまえの要件推測は悪い推測!
jq以前の脳の構造上の欠陥問題
おまえの要件推測は悪い推測!
jq以前の脳の構造上の欠陥問題
2018/04/05(木) 00:29:02.11ID:???
動かないのは推測以前だろw
2018/04/05(木) 00:29:24.22ID:???
俺よりダメなやつがいるから俺は悪くない!
だそうです
だそうです
2018/04/05(木) 00:30:17.70ID:???
要件が曖昧なら、推測で作ってもいいよ。
だけど、動かないのは論外だから
だけど、動かないのは論外だから
2018/04/05(木) 00:31:09.71ID:???
っていうか文句言う前に、動くもの作れよ。
良い・ダメ以前の問題。
物を作れなきゃ、論外
良い・ダメ以前の問題。
物を作れなきゃ、論外
2018/04/05(木) 00:31:15.71ID:???
もっとちゃんと泳がせたほうが面白かったのに
2018/04/05(木) 00:33:57.03ID:???
2018/04/05(木) 00:35:11.48ID:???
2018/04/05(木) 00:42:32.38ID:???
はい、ついでに行クリックで行のヘッダを変えるやつ
https://jsfiddle.net/pztcepet/
$(document).on('click', 'tr', function() {
$(this).addClass('selected').siblings().removeClass('selected')
});
https://jsfiddle.net/pztcepet/
$(document).on('click', 'tr', function() {
$(this).addClass('selected').siblings().removeClass('selected')
});
2018/04/05(木) 00:43:54.75ID:???
2018/04/05(木) 00:48:53.33ID:???
>>822 と同じ仕様ならこんな感じかな。thが最初になくても良い
(正確には複数のtable対応だけど、jQueryだと一つに対応するのも複数に対応するのも手間が変わらない)
https://jsfiddle.net/uwf0xu71/
$(document).on('click', 'tr', function() {
$(this).toggleClass('selected');
});
(正確には複数のtable対応だけど、jQueryだと一つに対応するのも複数に対応するのも手間が変わらない)
https://jsfiddle.net/uwf0xu71/
$(document).on('click', 'tr', function() {
$(this).toggleClass('selected');
});
2018/04/05(木) 00:51:27.35ID:???
>>822はお題を間違えている上に
間違えたお題用のHTMLじゃないと動作確認ができず
そのHTMLすら書いてないんじゃ、どうしようもないなw
誰も検証できない。せめてお題ぐらい間違えるな。
もしくは動くものをjsfiddleなりで用意しろ
間違えたお題用のHTMLじゃないと動作確認ができず
そのHTMLすら書いてないんじゃ、どうしようもないなw
誰も検証できない。せめてお題ぐらい間違えるな。
もしくは動くものをjsfiddleなりで用意しろ
2018/04/05(木) 00:57:44.39ID:???
2018/04/05(木) 01:00:57.17ID:???
>>847をアロー関数を使って一行になおしてみた
$(document).on('click', 'tr', e => $(e.currentTarget).toggleClass('selected'));
普通に関数を一行にしたほうが短かったw
$(document).on('click', 'tr', function() { $(this).toggleClass('selected') });
$(document).on('click', 'tr', e => $(e.currentTarget).toggleClass('selected'));
普通に関数を一行にしたほうが短かったw
$(document).on('click', 'tr', function() { $(this).toggleClass('selected') });
2018/04/05(木) 01:03:54.62ID:???
簡単な「行」で遊んでる所悪いが、本当のお題は >>822 の「列」だからな
動くコードで出てるのは、jQuery版のこれだけ( >>821)
$(document).on('click', 'td', function() {
var index = $(this).siblings().addBack().index(this) + 1;
$(this).closest('table')
.find('th.selected').removeClass('selected').end()
.find("th:nth-of-type(" + index + ")").addClass('selected');
});
アンチjQueryは頑張れ。これ真似するだけだろ?
動くコードで出てるのは、jQuery版のこれだけ( >>821)
$(document).on('click', 'td', function() {
var index = $(this).siblings().addBack().index(this) + 1;
$(this).closest('table')
.find('th.selected').removeClass('selected').end()
.find("th:nth-of-type(" + index + ")").addClass('selected');
});
アンチjQueryは頑張れ。これ真似するだけだろ?
2018/04/05(木) 12:46:42.81ID:???
短くかければいいのなら単にhoge()と呼べば済むライブラリを提供すればいい
それと同じで君の回答と言うのは質問者の成長を微塵も考えていない自己満足のコードなんだよ
おかしな方向で張り合ってる暇があったらきちんとロジックやAPIの説明を交えた
質問者の為になって次から独り立ちできるような回答を心掛けろ
それと同じで君の回答と言うのは質問者の成長を微塵も考えていない自己満足のコードなんだよ
おかしな方向で張り合ってる暇があったらきちんとロジックやAPIの説明を交えた
質問者の為になって次から独り立ちできるような回答を心掛けろ
853Name_Not_Found
2018/04/05(木) 12:52:31.24ID:lV/eAogS ほげー
2018/04/05(木) 14:23:48.00ID:???
オブジェクトにイベントリスナを登録
オブジェクトにイベントを発火させると、イベントリスナを順次呼ぶ
みたいな仕組みを作る時の定石みたいのありますか?
自分でonメソッドやonceメソッドやtriggerメソッドを実装することも
そんなに手間ではなさそうですが
使ったら便利になるパーツが既に揃ってるんじゃないかという気もします
オブジェクトにイベントを発火させると、イベントリスナを順次呼ぶ
みたいな仕組みを作る時の定石みたいのありますか?
自分でonメソッドやonceメソッドやtriggerメソッドを実装することも
そんなに手間ではなさそうですが
使ったら便利になるパーツが既に揃ってるんじゃないかという気もします
2018/04/05(木) 19:26:13.32ID:???
2018/04/05(木) 21:15:06.64ID:???
イベントと言いつつただちょっと伝播するコールバックがしたいだけだろ
2018/04/05(木) 23:15:01.17ID:???
イベントってそんなたいそうなものですか?
https://developer.mozilla.org/ja/docs/Web/API/EventTarget
EventTargetの簡易実装はたった35行ですよ
もともとかなりシンプルな仕組みだと思いますが
https://developer.mozilla.org/ja/docs/Web/API/EventTarget
EventTargetの簡易実装はたった35行ですよ
もともとかなりシンプルな仕組みだと思いますが
2018/04/05(木) 23:23:46.06ID:???
2018/04/05(木) 23:30:36.42ID:???
>854
> みたいな仕組みを作る時の定石みたいのありますか?
あるよ。EventEmitterとかいうのがそれ
node関連でよく使われているがブラウザでも使える
EventEmitterとかEventEmitter2とかEventEmitter3とかEventEmitter4とか
あるので注意なw
なお、いつものことだが
jQueryはDOM要素だけでなく任意のオブジェクトに対してonでイベントハンドラを定義できる
たったこれだけで、あなたの希望のものが実現できるよ
var obj = { foo: 'bar' };
$(obj).on('myevent', function() {alert(this.foo)});
$(obj).on('myevent', function() {alert(1)});
$(obj).on('myevent', function() {alert(2)});
$(obj).trigger('myevent');
> みたいな仕組みを作る時の定石みたいのありますか?
あるよ。EventEmitterとかいうのがそれ
node関連でよく使われているがブラウザでも使える
EventEmitterとかEventEmitter2とかEventEmitter3とかEventEmitter4とか
あるので注意なw
なお、いつものことだが
jQueryはDOM要素だけでなく任意のオブジェクトに対してonでイベントハンドラを定義できる
たったこれだけで、あなたの希望のものが実現できるよ
var obj = { foo: 'bar' };
$(obj).on('myevent', function() {alert(this.foo)});
$(obj).on('myevent', function() {alert(1)});
$(obj).on('myevent', function() {alert(2)});
$(obj).trigger('myevent');
2018/04/06(金) 00:22:07.96ID:???
>>859
ありがとうございます
EventEmitterというのは、聞いたことのある言葉ですが、
そういうものだったのですね
jQueryも使えることは調べていて知りましたが
イベントを実装するためにオブジェクト自体がjQueryオブジェクトになってしまうのはどうか?
と思ってやめたのでした
ありがとうございました
ありがとうございます
EventEmitterというのは、聞いたことのある言葉ですが、
そういうものだったのですね
jQueryも使えることは調べていて知りましたが
イベントを実装するためにオブジェクト自体がjQueryオブジェクトになってしまうのはどうか?
と思ってやめたのでした
ありがとうございました
2018/04/06(金) 02:31:45.36ID:???
EventEmitterを継承するようにしたら、思っていた感じになりました
ありがとうございました
ありがとうございました
2018/04/08(日) 09:35:52.90ID:???
> イベントを実装するためにオブジェクト自体がjQueryオブジェクトになってしまうのはどうか?
別にjQueryオブジェクトにはならないよ
別にjQueryオブジェクトにはならないよ
2018/04/08(日) 13:56:28.83ID:???
var arr=[];
function p(n){
arr.push(n);
}
p({id:'hoge',age:20});
p({id:'fuga',age:18});
console.log(arr);
これをクラスぽく書くにはどうしたらいいですか?
var my=function(){
this.arr=[];
}
my.prototype.p=function(n){ this.arr.push(n);return this; }
var a=new my();
a.p({id:'hoge',age:20});
a.p({id:'fuga',age:18});
var b=new my();
b.p({id:'moge',age:30});
b.p({id:'muga',age:38});
console.log(a);
console.log(b);
この.pを無くしてa({})やb({})という風にしたいのです
function p(n){
arr.push(n);
}
p({id:'hoge',age:20});
p({id:'fuga',age:18});
console.log(arr);
これをクラスぽく書くにはどうしたらいいですか?
var my=function(){
this.arr=[];
}
my.prototype.p=function(n){ this.arr.push(n);return this; }
var a=new my();
a.p({id:'hoge',age:20});
a.p({id:'fuga',age:18});
var b=new my();
b.p({id:'moge',age:30});
b.p({id:'muga',age:38});
console.log(a);
console.log(b);
この.pを無くしてa({})やb({})という風にしたいのです
2018/04/08(日) 14:18:18.42ID:???
Constructorから作るインスタンスを素のオブジェクトじゃなくて関数にしたいってことかな
ならConstructor内のthisを無視してthis拘束した関数作ってprototypeに色々付けてそれreturnすればいい
ならConstructor内のthisを無視してthis拘束した関数作ってprototypeに色々付けてそれreturnすればいい
2018/04/08(日) 18:01:23.99ID:???
this無視するのに拘束・・?
2018/04/08(日) 21:53:43.18ID:???
Javaの教祖マーティン・ファウラー御大、名著「リファクタリング」第2版にJavaではなくJavascript を採用してしまうwwwww
https://martinfowler.com/articles/201803-refactoring-2nd-ed.html
https://martinfowler.com/articles/201803-refactoring-2nd-ed.html
2018/04/09(月) 00:54:41.90ID:???
>>866
jQueryも採用しますか?
jQueryも採用しますか?
2018/04/09(月) 01:42:45.30ID:???
jQueryスレで聞いてください。
2018/04/09(月) 02:40:22.35ID:???
2018/04/09(月) 04:17:02.10ID:???
>>867
そもそもDOM APIがでてこないんじゃないの?
アレな人はJavaScriptの話題だけしろーっていって
DOM APIの話はOKとかダブルスタンダードなこと言ってるけど
JavaScriptにDOM APIは関係ないからね
その本はあくまで言語の話しかしないでしょう。
でもライブラリを使って短くしましょうぐらいは言うかもね
そもそもDOM APIがでてこないんじゃないの?
アレな人はJavaScriptの話題だけしろーっていって
DOM APIの話はOKとかダブルスタンダードなこと言ってるけど
JavaScriptにDOM APIは関係ないからね
その本はあくまで言語の話しかしないでしょう。
でもライブラリを使って短くしましょうぐらいは言うかもね
2018/04/09(月) 06:26:55.39ID:???
>アレな人はJavaScriptの話題だけしろーっていって
>DOM APIの話はOKとかダブルスタンダードなこと言ってるけど
ここがWEB製作板で扱う話題が以下なんだから当然では・・・
・HTML、CSSなどのサイト制作の技術
・JavaScript、VBScriptなどのクライアントサイドプログラム
>DOM APIの話はOKとかダブルスタンダードなこと言ってるけど
ここがWEB製作板で扱う話題が以下なんだから当然では・・・
・HTML、CSSなどのサイト制作の技術
・JavaScript、VBScriptなどのクライアントサイドプログラム
2018/04/09(月) 06:30:56.20ID:???
ついでに言えばテーマがリファクタリングの本なんだから
DOM APIが出ようが出まいが関係ないだろう・・・
DOM APIが出ようが出まいが関係ないだろう・・・
2018/04/09(月) 06:36:27.90ID:???
>>871
ここはWebクライアントサイド技術の板なんだから
ブラウザに標準搭載のDOMが関係ないわけないだろ
ただオプションであるライブラリの1つを
さも当たり前かのように扱うなということを皆言ってる
料理でいうと、「砂糖・塩」と「親子丼の素・牛丼の素」は
いくら同じ調味料でも違うし
基本的に後者を使うのがスマートだと思い込んでる事自体が
料理愛好家によって批判されてるんだよ
ここはWebクライアントサイド技術の板なんだから
ブラウザに標準搭載のDOMが関係ないわけないだろ
ただオプションであるライブラリの1つを
さも当たり前かのように扱うなということを皆言ってる
料理でいうと、「砂糖・塩」と「親子丼の素・牛丼の素」は
いくら同じ調味料でも違うし
基本的に後者を使うのがスマートだと思い込んでる事自体が
料理愛好家によって批判されてるんだよ
2018/04/09(月) 07:16:35.31ID:???
安価先、合ってる?
2018/04/09(月) 11:43:48.70ID:???
クロージャでやってみました>>869
https://jsfiddle.net/4ed98ue3/1/
本当は別のクラスにこういう機能を組み込みたかったのですが
それだとa.p({})みたいに.pを書かないといけなくなってしまうのです
・arrayにプッシュするときは.pみたいなのを書かずa({})でできる
・それ以外の機能は”.なんたら”を書く
みたいな感じです
https://jsfiddle.net/4ed98ue3/1/
本当は別のクラスにこういう機能を組み込みたかったのですが
それだとa.p({})みたいに.pを書かないといけなくなってしまうのです
・arrayにプッシュするときは.pみたいなのを書かずa({})でできる
・それ以外の機能は”.なんたら”を書く
みたいな感じです
2018/04/09(月) 11:55:36.23ID:???
phpの $array[] = $newvalue; みたいな?
2018/04/09(月) 13:11:48.54ID:???
こんな感じ?
var my=function(){
var that = this;
this.arr = [];
return function(n){ that.p(n); return that; };
}
my.prototype.p=function(n){ this.arr.push(n); return this;};
my.prototype.get=function(n){ return this.arr[n];};
var a=new my();
var c = a({id:'hoge',age:20});
a({id:'fuga',age:18});
var b=new my();
var d = b({id:'moge',age:30});
b({id:'muga',age:38});
c.p({id:'nuga',age:48});
console.log(c);
console.log(d);
console.log(c.get(c.arr.length - 1));
var my=function(){
var that = this;
this.arr = [];
return function(n){ that.p(n); return that; };
}
my.prototype.p=function(n){ this.arr.push(n); return this;};
my.prototype.get=function(n){ return this.arr[n];};
var a=new my();
var c = a({id:'hoge',age:20});
a({id:'fuga',age:18});
var b=new my();
var d = b({id:'moge',age:30});
b({id:'muga',age:38});
c.p({id:'nuga',age:48});
console.log(c);
console.log(d);
console.log(c.get(c.arr.length - 1));
2018/04/09(月) 13:45:14.33ID:???
2018/04/09(月) 15:58:37.99ID:???
文章編集用のtextareaと、操作用のbuttonがあります
textareaにフォーカスがある時に操作用のbuttonをクリックした時にも
textareaのフォーカスは奪いたくありません
デフォルトイベントを殺そうと、
buttonのclickイベントリスナの中で
preventDefaultとstopPropagationをしても、フォーカスは失われます
フォーカスを奪わないようにするにはどうすればいいのでしょうか?
textareaにフォーカスがある時に操作用のbuttonをクリックした時にも
textareaのフォーカスは奪いたくありません
デフォルトイベントを殺そうと、
buttonのclickイベントリスナの中で
preventDefaultとstopPropagationをしても、フォーカスは失われます
フォーカスを奪わないようにするにはどうすればいいのでしょうか?
2018/04/09(月) 16:33:17.76ID:???
2018/04/09(月) 16:33:54.84ID:???
>>879
ふと思い出してmousedownをpreventDefaultしたら
フォーカスを奪わないと確認できました
こういう場合、
デフォルトイベントを殺すためのmousedownイベントと
clickイベントを別々に設定するのでしょうか?
clickイベントの代わりにmousedownイベントを使うようにしたら、
イベントリスナを一つにまとめることが出来ますが
clickの代わりにmousedownを使うのは、それはそれでどうなのかと思います
どうやるのがセオリーですか?
ふと思い出してmousedownをpreventDefaultしたら
フォーカスを奪わないと確認できました
こういう場合、
デフォルトイベントを殺すためのmousedownイベントと
clickイベントを別々に設定するのでしょうか?
clickイベントの代わりにmousedownイベントを使うようにしたら、
イベントリスナを一つにまとめることが出来ますが
clickの代わりにmousedownを使うのは、それはそれでどうなのかと思います
どうやるのがセオリーですか?
2018/04/09(月) 16:35:44.81ID:???
2018/04/09(月) 21:22:01.82ID:???
2018/04/09(月) 21:33:22.25ID:???
スマホみたいにtextarea触ると入力画面に遷移する環境をどう扱うかで分かれそう
PCだけなら地道にtextarea操作時に常時キャレットの位置を記録しておいて
何かあったらfocus()してキャレットを元に戻すまで一まとめにしてしまうのが
面倒だけど一番な気がする
そういう実装をエディタ系でたまに見る
PCだけなら地道にtextarea操作時に常時キャレットの位置を記録しておいて
何かあったらfocus()してキャレットを元に戻すまで一まとめにしてしまうのが
面倒だけど一番な気がする
そういう実装をエディタ系でたまに見る
2018/04/09(月) 21:58:51.47ID:???
>>883-884
ありがとうございます
mousedownはpreventDefaultだけするようにしました
こういう挙動が問題だと今日始めて気づいたのですが、
皆さん色々工夫してるということが分かって何か安心しました
ありがとうございました
ありがとうございます
mousedownはpreventDefaultだけするようにしました
こういう挙動が問題だと今日始めて気づいたのですが、
皆さん色々工夫してるということが分かって何か安心しました
ありがとうございました
2018/04/09(月) 22:07:54.89ID:???
2018/04/10(火) 15:01:18.87ID:???
そもそも、focus を奪わないって無理だろ
focusは、PC 内で同時に、1つのアプリの、1つのコントロールしか持てないから、
コントロールに入力する・ボタンを押すなどの際には、focusを奪う必要がある
また、focusを持つコントロールは、見えていないといけない
focusは、PC の資源。
何かのアプリが動くと、しょっちゅう、focusが奪われる。
それがウザイ
focusは、PC 内で同時に、1つのアプリの、1つのコントロールしか持てないから、
コントロールに入力する・ボタンを押すなどの際には、focusを奪う必要がある
また、focusを持つコントロールは、見えていないといけない
focusは、PC の資源。
何かのアプリが動くと、しょっちゅう、focusが奪われる。
それがウザイ
2018/04/11(水) 00:10:50.41ID:???
クリック対象がフォーカスを持たないものなら
フォーカスを奪わなくできる
フォーカスを奪わなくできる
2018/04/11(水) 00:28:07.82ID:???
tabでフォーカス移動でいるかどうかとは違って
divだろうとspanだろうとimgだろうとフォーカスは持つし取れるんじゃないの
divだろうとspanだろうとimgだろうとフォーカスは持つし取れるんじゃないの
2018/04/11(水) 20:22:19.70ID:???
アロー関数ってどういう必要性から導入されたの?
2018/04/11(水) 20:50:14.95ID:???
JSは即時関数やら関数定義を大量にする必要が出てくるのに
functionって長いじゃん、それが理由
#案とかいろいろあったよ
functionって長いじゃん、それが理由
#案とかいろいろあったよ
2018/04/11(水) 21:32:01.01ID:???
つまり本質的に不要
2018/04/11(水) 22:49:53.60ID:???
>>890
関数の引数に、値のように見える関数を渡したいから
array.sort(比較関数) みたいにね。
ここ、比較関数を渡すんだけど、function() だったらいかにも関数じゃん?
じゃなくて、比較処理値みたいに関数っぽくないものを渡したくない?
array.sort( (a, b) => b - a ) みたいにね。
ほら、これ引数に関数を渡してるように見ないでしょ?
まるで値、実体は関数なんだけど、関数に見えない。値みたい
それがアロー関数の素晴らしい所
これは関数なんだけど、関数だとおもっちゃいけない。
値だ。そういう処理をする値だ。と考えると
thisが変わっちゃうなんてありえないって思えてくるでしょ?
それがアロー関数の素晴らしい所
関数の引数に、値のように見える関数を渡したいから
array.sort(比較関数) みたいにね。
ここ、比較関数を渡すんだけど、function() だったらいかにも関数じゃん?
じゃなくて、比較処理値みたいに関数っぽくないものを渡したくない?
array.sort( (a, b) => b - a ) みたいにね。
ほら、これ引数に関数を渡してるように見ないでしょ?
まるで値、実体は関数なんだけど、関数に見えない。値みたい
それがアロー関数の素晴らしい所
これは関数なんだけど、関数だとおもっちゃいけない。
値だ。そういう処理をする値だ。と考えると
thisが変わっちゃうなんてありえないって思えてくるでしょ?
それがアロー関数の素晴らしい所
2018/04/11(水) 23:22:08.99ID:???
紛らわしい所
2018/04/12(木) 00:43:12.05ID:???
>>892
javaやらrubyやらが涙ぐましい努力をして導入したのとは違い、javascriptは元から関数が第一級オブジェクトであるのでその通り。
でも短くかけるようになるだけでも嬉しいじゃん。
this使う場合もたいていbindしなくてよくなるから短くなるぞ。
javaやらrubyやらが涙ぐましい努力をして導入したのとは違い、javascriptは元から関数が第一級オブジェクトであるのでその通り。
でも短くかけるようになるだけでも嬉しいじゃん。
this使う場合もたいていbindしなくてよくなるから短くなるぞ。
2018/04/12(木) 03:01:12.33ID:???
まあ使えなくても困りはしない
アロー演算子は言語仕様だから
オレオレライブラリで代用したりはできないけど
どうでもいいけど
function( ... ){ ... }( ... )[ ... ]
とかのクソわかりづらい記述が俺は大嫌いだ
アロー演算子は言語仕様だから
オレオレライブラリで代用したりはできないけど
どうでもいいけど
function( ... ){ ... }( ... )[ ... ]
とかのクソわかりづらい記述が俺は大嫌いだ
2018/04/12(木) 05:25:46.63ID:???
(function( ... ){ ... })( ... )[ ... ]じゃないか?w
そういうときこそ変数に入れて分けよう。
var hoge = function( ... ){ ... }
var fuga = hoge( ... )
var piyo = fuga[ ... ]
一行で書くのはたいていはパフォーマンスのためというより変数の名前考えるのがダルいから。ソースは俺。
分からないなら分かりやすく書こう。
そういうときこそ変数に入れて分けよう。
var hoge = function( ... ){ ... }
var fuga = hoge( ... )
var piyo = fuga[ ... ]
一行で書くのはたいていはパフォーマンスのためというより変数の名前考えるのがダルいから。ソースは俺。
分からないなら分かりやすく書こう。
2018/04/12(木) 05:47:58.22ID:???
クソな書き方するワンライナークズって死ねばいいよね という話だろ
2018/04/12(木) 17:12:46.53ID:???
変数名かんがえるのが面倒なので便利サイト教えてください
2018/04/12(木) 19:59:38.20ID:???
別に漢字とか使ってもいいんやで
2018/04/12(木) 20:51:14.38ID:???
頭ん中で翻訳すればすぐ
2018/04/12(木) 21:03:54.26ID:???
2018/04/12(木) 23:22:04.28ID:???
アローが演算子?
2018/04/12(木) 23:30:08.93ID:???
c++やphpじゃないんだから…
2018/04/12(木) 23:36:41.06ID:???
>>899
迷ったらcodicでいいんじゃね
迷ったらcodicでいいんじゃね
2018/04/12(木) 23:57:22.24ID:???
2018/04/13(金) 00:11:57.46ID:???
スマートさのかけらもない弁解
2018/04/13(金) 00:19:21.42ID:???
new演算子と併用できないんだし
=>がアロー演算子、アロー演算子を用いて宣言された関数がアロー関数、なんじゃないの?
=>がアロー演算子、アロー演算子を用いて宣言された関数がアロー関数、なんじゃないの?
2018/04/13(金) 00:34:51.14ID:???
どこぞの書き方がいっぱいある言語もクソだと思うが
省略できます省略できます省略できますもクソだと思う
多少なら構わんが
省略できます省略できます省略できますもクソだと思う
多少なら構わんが
2018/04/13(金) 00:47:43.70ID:???
2018/04/13(金) 01:02:50.35ID:???
>>909
両方rubyじゃんクソ過ぎワロタwwww
両方rubyじゃんクソ過ぎワロタwwww
2018/04/13(金) 01:07:24.42ID:???
保守するのが自分じゃないならどんな書き方してもいい
6重IFネストしてもいいぞ
6重IFネストしてもいいぞ
2018/04/13(金) 12:16:39.80ID:???
focusoutした時、イベントオブジェクトのrelatedTargetには新しくフォーカスされた要素が入っていますが
ネットでこれはchromeでしか使えないという情報を見かけました
同じものはdocument.activeElementにも入っているはずなので、
汎用性を考えてこっちを使う方がいいでしょうか?
ネットでこれはchromeでしか使えないという情報を見かけました
同じものはdocument.activeElementにも入っているはずなので、
汎用性を考えてこっちを使う方がいいでしょうか?
2018/04/13(金) 12:22:24.17ID:???
よく知らんけどタイミング大丈夫なの?
2018/04/13(金) 12:56:04.97ID:???
>>914
ネットって大雑把過ぎてどこのことかわからないけど
ブラウザの実装状況についてはMDNやCan I useを見れば大体解决する
https://developer.mozilla.org/ja/docs/Web/API/FocusEvent/relatedTarget
https://caniuse.com/#search=Focus
ネットって大雑把過ぎてどこのことかわからないけど
ブラウザの実装状況についてはMDNやCan I useを見れば大体解决する
https://developer.mozilla.org/ja/docs/Web/API/FocusEvent/relatedTarget
https://caniuse.com/#search=Focus
2018/04/13(金) 13:29:19.71ID:???
2018/04/13(金) 20:58:35.49ID:???
>>917
jQueryはそこらへんの違いを吸収していた気がする
jQueryはそこらへんの違いを吸収していた気がする
2018/04/14(土) 03:42:39.78ID:???
2018/04/14(土) 07:13:23.43ID:???
localStorageは保存時にJSON.stringify
読み込み時にJSON.parse
をかけて使うものなのでしょうか?
読み込み時にJSON.parse
をかけて使うものなのでしょうか?
2018/04/14(土) 07:21:56.86ID:???
だとすれば、setItemやgetItemにJSONへのエンコードとデコードを組み込んで
デフォルトで文字列以外の値も受け取れるようにした方が良かったのではないでしょうか?
デフォルトで文字列以外の値も受け取れるようにした方が良かったのではないでしょうか?
2018/04/14(土) 07:53:56.36ID:???
そんなこと言われても…
2018/04/14(土) 10:26:51.04ID:???
>>905
これ知らなかった。地味にすごく便利w
これ知らなかった。地味にすごく便利w
2018/04/14(土) 10:40:21.31ID:???
>>920>>921
localStorageがドキュメント型DBなのならそうだけど、あくまでキーバリュー型DBだから。
保存されるのは文字列。
それ以上でも以下でもない。
そこを勘違いさせるようなAPIを標準で入れてしまうのはよくない。
オブジェクトのようにアクセスできるようにしたらオブジェクトと同じように使われることを促進してしまうが、API下ではたとえ一部のキーが対象の操作であっても文字列全体の読み出しや文字列全体の書き込みが発生してしまう。
用途によってIndexedDBやその他のローカルDBライブラリを活用を検討すべき。
内部でIndexedDBを使い(非対応ブラウザのためのフォールバックあり)、ドキュメント型DBのインターフェースを提供するようなのもある。
簡単だからと言って何でもかんでもlocalStorage使うのはよくない。
localStorageがドキュメント型DBなのならそうだけど、あくまでキーバリュー型DBだから。
保存されるのは文字列。
それ以上でも以下でもない。
そこを勘違いさせるようなAPIを標準で入れてしまうのはよくない。
オブジェクトのようにアクセスできるようにしたらオブジェクトと同じように使われることを促進してしまうが、API下ではたとえ一部のキーが対象の操作であっても文字列全体の読み出しや文字列全体の書き込みが発生してしまう。
用途によってIndexedDBやその他のローカルDBライブラリを活用を検討すべき。
内部でIndexedDBを使い(非対応ブラウザのためのフォールバックあり)、ドキュメント型DBのインターフェースを提供するようなのもある。
簡単だからと言って何でもかんでもlocalStorage使うのはよくない。
2018/04/14(土) 10:40:24.08ID:???
>>921
ありえないな。
JSON使ってディープコピーを実現するとか
馬鹿なことを言ってるやつがいるが、
そんなことをするとデータが壊れる。
その前提を知ってるならJSON文字列に
変換するのは自分でやることもできるんだから
あえてlocalStorageにもたせる必要性がない
ありえないな。
JSON使ってディープコピーを実現するとか
馬鹿なことを言ってるやつがいるが、
そんなことをするとデータが壊れる。
その前提を知ってるならJSON文字列に
変換するのは自分でやることもできるんだから
あえてlocalStorageにもたせる必要性がない
2018/04/14(土) 10:41:07.36ID:???
>>924
> localStorageがドキュメント型DBなのならそうだけど、あくまでキーバリュー型DBだから。
> 保存されるのは文字列。
それは説明になってない。
キーバリュー型DBだからって文字列専用じゃなきゃいけない理由なんてない
> localStorageがドキュメント型DBなのならそうだけど、あくまでキーバリュー型DBだから。
> 保存されるのは文字列。
それは説明になってない。
キーバリュー型DBだからって文字列専用じゃなきゃいけない理由なんてない
2018/04/14(土) 10:49:21.51ID:???
仕様の話ならまだしも策定された仕様の是非の話はきっと別に良い場所があるんじゃないかな
2018/04/14(土) 13:01:23.65ID:???
オブジェクト丸ごとぶち込む様な雑な使い方すんなって事だよ
2018/04/14(土) 13:57:04.83ID:???
2018/04/15(日) 01:03:56.93ID:???
var constant = (any) => {
return (_) => {
return any;
};
};
ってコードがあるんだけど
二行目のカッコの中にあるアンダーバーって何?
return (_) => {
return any;
};
};
ってコードがあるんだけど
二行目のカッコの中にあるアンダーバーって何?
2018/04/15(日) 01:08:24.66ID:???
それよりもな。一般的にアロー関数はreturnや{}を使わないもんだ
var constant = (any) => (_ => any);
var constant = (any) => (_ => any);
2018/04/15(日) 01:11:39.88ID:???
おっと質問に答えてなかったな。
引数は利用しませんっていう時に時々使われる変数名だ
引数は利用しませんっていう時に時々使われる変数名だ
2018/04/15(日) 01:20:30.41ID:???
配列から任意のオブジェクトを破壊的に削除するシンプルな方法ありますか?
lodashのwithoutはシンプルですが非破壊的です
ループとspliceを使ったらできそうですが、そんなにコードを書くならwithoutの方がいいです
lodashのwithoutはシンプルですが非破壊的です
ループとspliceを使ったらできそうですが、そんなにコードを書くならwithoutの方がいいです
2018/04/15(日) 01:30:09.78ID:???
どのくらいのコードなら
破壊的という要件を満たさない方がいいと判断するのか書いてくれないと
破壊的という要件を満たさない方がいいと判断するのか書いてくれないと
2018/04/15(日) 01:34:23.11ID:???
findIndexしてspliceとか
2018/04/15(日) 02:16:05.66ID:???
非破壊でなく、何かしら変化させちゃったらみんな破壊的なんだから今回どういう条件なのか書いてもらわないと…
例えばfindIndexとdeleteで短く書くと歯抜けになるがそれでいいの?
もちろんインデックス連番になるよう詰めることも出来るが当たり前だがその分のコードは増える。
条件をだな、
例えばfindIndexとdeleteで短く書くと歯抜けになるがそれでいいの?
もちろんインデックス連番になるよう詰めることも出来るが当たり前だがその分のコードは増える。
条件をだな、
2018/04/15(日) 02:29:07.16ID:???
lodashのwithoutの破壊的版ってことだろ
それぐらい読み取れよ
それぐらい読み取れよ
2018/04/15(日) 02:31:55.57ID:???
へー、今見たら、lodashのドキュメントページにREPLがついてた。
つまりその場ですぐにサンプルコードを実行、
そして書き換えて実行してみることができる。
便利だな。いつからだろ
つまりその場ですぐにサンプルコードを実行、
そして書き換えて実行してみることができる。
便利だな。いつからだろ
2018/04/15(日) 02:51:37.33ID:???
読んだがこれを破壊的にやりたい理由がさっぱり分からん。何かしらメリット出るのか?
非破壊ならvanillaでもfilter一発なのに。
非破壊ならvanillaでもfilter一発なのに。
2018/04/15(日) 03:05:43.36ID:???
許してやってくれ
ライブラリ好きの彼は破壊的という言葉を使ってみたかったんだ
ライブラリ好きの彼は破壊的という言葉を使ってみたかったんだ
2018/04/15(日) 03:14:01.56ID:???
>>939
配列を参照している何かが他にある場合とかじゃない?
配列を参照している何かが他にある場合とかじゃない?
2018/04/15(日) 03:27:18.59ID:???
再代入しなければ宣言をconstに出来ますし
配列オブジェクトを作り直すより維持する方がイケてると思います
lodashのpullで出来ました
配列オブジェクトを作り直すより維持する方がイケてると思います
lodashのpullで出来ました
2018/04/15(日) 03:35:42.13ID:???
>>940
おいおいw破壊的なものがすきなわけ無いだろ
おいおいw破壊的なものがすきなわけ無いだろ
944Name_Not_Found
2018/04/15(日) 03:43:12.32ID:9Y5uuXDs2018/04/15(日) 06:50:30.62ID:???
普通はバグりたくないから、非破壊的なものを使う。
破壊的なものを使う場合は、メソッドチェーンとかで、処理を続けたい場合だけ
ところで君ら、lodash 厨に聞くが、
日本語に翻訳したドキュメントページを作ったかね?
もし作っていなければ、早く作りたまえ!
破壊的なものを使う場合は、メソッドチェーンとかで、処理を続けたい場合だけ
ところで君ら、lodash 厨に聞くが、
日本語に翻訳したドキュメントページを作ったかね?
もし作っていなければ、早く作りたまえ!
2018/04/15(日) 10:32:58.79ID:???
> 破壊的なものを使う場合は、メソッドチェーンとかで、処理を続けたい場合だけ
メソッドチェーンは同じオブジェクトに対して操作するものでなければならない
という定義があるのかどうか明確じゃないし、
あんたがどういう意味で言ってるのか知らんが、
単にメソッドの連続で処理を続けたいだけなら非破壊的であってもできる
例えばこんな感じだな。メソッドの連続で処理を続けているが非破壊的
https://lodash.com/docs/4.17.5#prototype-chain
var users = [
{ 'user': 'barney', 'age': 36 },
{ 'user': 'fred', 'age': 40 }
];
// A sequence with explicit chaining.
_(users)
.chain()
.head()
.pick('user')
.value();
// => { 'user': 'barney' }
メソッドチェーンは同じオブジェクトに対して操作するものでなければならない
という定義があるのかどうか明確じゃないし、
あんたがどういう意味で言ってるのか知らんが、
単にメソッドの連続で処理を続けたいだけなら非破壊的であってもできる
例えばこんな感じだな。メソッドの連続で処理を続けているが非破壊的
https://lodash.com/docs/4.17.5#prototype-chain
var users = [
{ 'user': 'barney', 'age': 36 },
{ 'user': 'fred', 'age': 40 }
];
// A sequence with explicit chaining.
_(users)
.chain()
.head()
.pick('user')
.value();
// => { 'user': 'barney' }
2018/04/15(日) 10:39:19.80ID:???
配列で、頭の要素内の何かを使いたくて、頭が[0]と保証されてない、ってどんだけ異常な環境で仕事してんの
2018/04/15(日) 11:09:01.51ID:???
>>945
おまえが作れ
おまえが作れ
2018/04/15(日) 12:12:31.11ID:???
>>945
バグりたくないから非破壊的にするとは?
オブジェクトは普通上書きしませんし
配列オブジェクトもオブジェクトのように扱うようにするということで
バグは関係ないと思いますが・・
ローカル変数ならオブジェクトをポイ捨てするのもいいですが
公的性質を持っているオブジェクトなら上書きする方がバグに繋がると思います
バグりたくないから非破壊的にするとは?
オブジェクトは普通上書きしませんし
配列オブジェクトもオブジェクトのように扱うようにするということで
バグは関係ないと思いますが・・
ローカル変数ならオブジェクトをポイ捨てするのもいいですが
公的性質を持っているオブジェクトなら上書きする方がバグに繋がると思います
2018/04/15(日) 20:48:15.64ID:???
>>945
英語も読めない低学歴ってこと?
英語も読めない低学歴ってこと?
2018/04/15(日) 20:58:33.58ID:???
>>950
次スレはよ
次スレはよ
2018/04/16(月) 03:22:43.49ID:???
配列に配列を破壊的に追加したい場合
Array.prototype.push.apply(array,array1)
とやりますが、
これと同じことをやる関数はlodashにないのでしょうか?
こういう書き方はシンプルじゃないので、
こういうのこそlodashにあって欲しいのですが見当たりません
他のやり方があるのでしょうか?
Array.prototype.push.apply(array,array1)
とやりますが、
これと同じことをやる関数はlodashにないのでしょうか?
こういう書き方はシンプルじゃないので、
こういうのこそlodashにあって欲しいのですが見当たりません
他のやり方があるのでしょうか?
2018/04/16(月) 03:37:30.62ID:???
javascriptで作ってもらったウェブアプリの出来がいいかわるいか
どのあたりを見てどうやって判断すればいいんでしょうか?
どのあたりを見てどうやって判断すればいいんでしょうか?
2018/04/16(月) 04:51:18.87ID:???
2018/04/16(月) 06:29:35.61ID:???
2018/04/16(月) 09:59:22.05ID:???
957Name_Not_Found
2018/04/16(月) 15:49:02.81ID:wBM3V2Kg chromeで画像検索結果等から、画像を自PCにダウンロードして自分のブログへ画像アップロード
というような画像アップロード簡易プログラムといったものを作成したいと思っています。
この一連の処理を一度行うプログラムの開発を試みています。
画像を右クリックすると「ブログにアップする」などみぎっクリックメニューなどを作成するのが目標です。
PHPで自分のブログに画像をアップロードする、というものは一応できたのですが、
chromeで画像のURLを取得するといった、
ブラウザ上の処理はjavascriptと思うのですが、
javascriptでもしURLを取得できたとしても、PHPの側に変数をどう受け渡せばよいのか
調べてもはっきりわからない状態です
そもそもの言語も大体javascriptとかPHPあたりでよいと思うのですが、
どうすればうまくいきますでしょうか…。
というような画像アップロード簡易プログラムといったものを作成したいと思っています。
この一連の処理を一度行うプログラムの開発を試みています。
画像を右クリックすると「ブログにアップする」などみぎっクリックメニューなどを作成するのが目標です。
PHPで自分のブログに画像をアップロードする、というものは一応できたのですが、
chromeで画像のURLを取得するといった、
ブラウザ上の処理はjavascriptと思うのですが、
javascriptでもしURLを取得できたとしても、PHPの側に変数をどう受け渡せばよいのか
調べてもはっきりわからない状態です
そもそもの言語も大体javascriptとかPHPあたりでよいと思うのですが、
どうすればうまくいきますでしょうか…。
2018/04/16(月) 16:09:11.47ID:???
無断転載しちゃうんだ
959Name_Not_Found
2018/04/16(月) 16:31:58.17ID:wBM3V2Kg >>958
いえ、認められているフリー素材のみです!!
javascriptでサーバーにアップロードうんぬんというそういうものは出来ないし、
PHPでブラウザ上のものを色々操作したりデータ取得等できないし、
ここをどう融合するのか…という
クリップボードを利用して変数の出し入れ、など思ったのですが
そこもよく分からず・・
しかし、画像右クリック、デスクトップ等に保存、
それぞれの自分のブログで画像アップロードボタン系を押して、画像を選択して、
などここは絶対にプログラミングの知識がすごく使える場面だと思うのですが…。
いえ、認められているフリー素材のみです!!
javascriptでサーバーにアップロードうんぬんというそういうものは出来ないし、
PHPでブラウザ上のものを色々操作したりデータ取得等できないし、
ここをどう融合するのか…という
クリップボードを利用して変数の出し入れ、など思ったのですが
そこもよく分からず・・
しかし、画像右クリック、デスクトップ等に保存、
それぞれの自分のブログで画像アップロードボタン系を押して、画像を選択して、
などここは絶対にプログラミングの知識がすごく使える場面だと思うのですが…。
2018/04/16(月) 17:03:37.66ID:???
//JS側
fetch('PHPのURL', {
method: 'POST',
mode: 'cors',
body: new URLSearchParams({url: '画像のURL'}),
});
//PHP側
header("Access-Control-Allow-Origin: *");
$_POST['url']; //これが画像URL
fetch('PHPのURL', {
method: 'POST',
mode: 'cors',
body: new URLSearchParams({url: '画像のURL'}),
});
//PHP側
header("Access-Control-Allow-Origin: *");
$_POST['url']; //これが画像URL
961Name_Not_Found
2018/04/16(月) 19:25:38.49ID:ukfttz2j2018/04/16(月) 19:30:23.02ID:???
javascripter()らしいお粗末な回答どうもw
2018/04/16(月) 23:44:37.81ID:???
http://webings.net/js/dentaku/
このソースコードのjavascriptの部分の流れが良く理解出来ません
1.
if(val >= 0 && val <= 9) { // 電卓に表示する数列を作成
if(flag == 0) {
disp = val;
disp2 = "0";
flag = 1;
}
else {
disp = disp + val;
disp = parseFloat(disp);
}
数字のボタンを押した際の処理内容はここですよね?
どうして129と連続で入力した際は出力に129と出るのですか?
何故毎ループでdispが1→2→9と上書きされていかないのですか?
2. else {
if(disp) の部分
if(disp)は何を判定してるのですか?
switch(flag)で計算内容を判定していますが、このflagは、このあとの処理の
if(val == "=") {}で設定されるのではないのですか?
質問多くて申し訳ないですがよろしくお願いします
このソースコードのjavascriptの部分の流れが良く理解出来ません
1.
if(val >= 0 && val <= 9) { // 電卓に表示する数列を作成
if(flag == 0) {
disp = val;
disp2 = "0";
flag = 1;
}
else {
disp = disp + val;
disp = parseFloat(disp);
}
数字のボタンを押した際の処理内容はここですよね?
どうして129と連続で入力した際は出力に129と出るのですか?
何故毎ループでdispが1→2→9と上書きされていかないのですか?
2. else {
if(disp) の部分
if(disp)は何を判定してるのですか?
switch(flag)で計算内容を判定していますが、このflagは、このあとの処理の
if(val == "=") {}で設定されるのではないのですか?
質問多くて申し訳ないですがよろしくお願いします
2018/04/17(火) 01:17:48.98ID:???
>>957-959
スクレイピングは、Ruby で、Selenium WebDriver を使う。
静的なページなら、Mechanize
ブラウザで、ページの画像を右クリックすると、画像のURL がわかるとかは、
ブラウザのプラグインを使わないと無理だろ
スクレイピングは、Ruby で、Selenium WebDriver を使う。
静的なページなら、Mechanize
ブラウザで、ページの画像を右クリックすると、画像のURL がわかるとかは、
ブラウザのプラグインを使わないと無理だろ
2018/04/17(火) 01:28:13.60ID:???
>>963
こういう、1行ずつ説明していない、日記のような、
他人に教えていない、サイトを見たらダメ
他人のプログラムを解析するのは、自分で書いていないから、やたらと時間が掛かるし、
その割には、自分で書いていないから、いくら分析しても、自分の力が向上しない
他のサイトを見て、1行ずつ自分で書いて、実行して確かめながら、勉強すべし
こういう、1行ずつ説明していない、日記のような、
他人に教えていない、サイトを見たらダメ
他人のプログラムを解析するのは、自分で書いていないから、やたらと時間が掛かるし、
その割には、自分で書いていないから、いくら分析しても、自分の力が向上しない
他のサイトを見て、1行ずつ自分で書いて、実行して確かめながら、勉強すべし
2018/04/17(火) 02:04:41.60ID:???
下のコードを実行するとnが9000超えると
Uncaught RangeError: Maximum call stack size exceeded
というエラーがでるのですがどうすればいいのでしょう?
7万回くらい回したいんですが。。。
var locateBalls = (n, array, func, ) => {
if (n > 8900) {
//console.log(balls)
return balls;
} else {
//console.log("n: "+ n)
//console.log("x: " + ball.x + " y: "+ ball.y)
return locateBalls(n+1, func(), func);
}
}
locateBalls(0, balls, createBall)
Uncaught RangeError: Maximum call stack size exceeded
というエラーがでるのですがどうすればいいのでしょう?
7万回くらい回したいんですが。。。
var locateBalls = (n, array, func, ) => {
if (n > 8900) {
//console.log(balls)
return balls;
} else {
//console.log("n: "+ n)
//console.log("x: " + ball.x + " y: "+ ball.y)
return locateBalls(n+1, func(), func);
}
}
locateBalls(0, balls, createBall)
2018/04/17(火) 02:06:20.13ID:???
>>963
dispっていうのはおそらくdisplayの略
画面に表示されている文字列
valっていうのはおそらくvalueの略
現在入力した文字
> disp = disp + val;
文字と文字を+すると、くっつく。
例えば "a" + "b" だと"ab" になる
よってこの行で、画面が "1" で入力が "2" だと
dispには"12" がはいる。同様に"9"を押すと "129" となる
> if(disp)は何を判定してるのですか?
正直言ってぱっと見じゃ分からん。
+-×÷押した時にdispが空になってるから
それ以外の時に処理するものなんだろうけど
なんでこんな判定になるのか。そもそも普通の電卓は画面が空白に
なったりしない。直感的でないので分からんし、
クソコード(俺ならこんなコード書かない)なんで読み解きたくもない
>>965も言ってるけど、これは自分で勉強して、こんなの作ってみましたって
だけなんで勉強には不適切
dispっていうのはおそらくdisplayの略
画面に表示されている文字列
valっていうのはおそらくvalueの略
現在入力した文字
> disp = disp + val;
文字と文字を+すると、くっつく。
例えば "a" + "b" だと"ab" になる
よってこの行で、画面が "1" で入力が "2" だと
dispには"12" がはいる。同様に"9"を押すと "129" となる
> if(disp)は何を判定してるのですか?
正直言ってぱっと見じゃ分からん。
+-×÷押した時にdispが空になってるから
それ以外の時に処理するものなんだろうけど
なんでこんな判定になるのか。そもそも普通の電卓は画面が空白に
なったりしない。直感的でないので分からんし、
クソコード(俺ならこんなコード書かない)なんで読み解きたくもない
>>965も言ってるけど、これは自分で勉強して、こんなの作ってみましたって
だけなんで勉強には不適切
2018/04/17(火) 02:09:52.36ID:???
2018/04/17(火) 02:30:01.65ID:???
2018/04/17(火) 03:26:31.64ID:???
2018/04/17(火) 04:26:03.60ID:???
>>966
JavaScript には、末尾再帰が無いのか?
末尾再帰すると、スタックに積まずに、
while loop の形に展開してくれる最適化
それか、スタックサイズを大きく設定するとか。
ただし、swap が起きて、すごく遅くなるかも
JavaScript には、末尾再帰が無いのか?
末尾再帰すると、スタックに積まずに、
while loop の形に展開してくれる最適化
それか、スタックサイズを大きく設定するとか。
ただし、swap が起きて、すごく遅くなるかも
2018/04/17(火) 06:37:36.04ID:???
2018/04/17(火) 06:53:06.95ID:???
>>972
あるがまだSafariくらいしか実装していない
あるがまだSafariくらいしか実装していない
2018/04/17(火) 08:51:56.76ID:???
ecmaの仕様に入ったから末尾再帰はいずれすべてのブラウザに実装されるがあえて言いたい。
末尾再帰は甘え。
なぜ末尾再帰にするのか?
それはブラウザでループに置き換えられるから。
そんな志と抽象レベルの低いこと考えながら使うくらいなら再帰なんてやめちまえ。
再帰はアルゴリズムをスマートに書き表せるから素晴らしいのだ。
forループに変換できるかどうかは関係ない。
それが目的なら最初からfor書け。
末尾再帰は甘え。
なぜ末尾再帰にするのか?
それはブラウザでループに置き換えられるから。
そんな志と抽象レベルの低いこと考えながら使うくらいなら再帰なんてやめちまえ。
再帰はアルゴリズムをスマートに書き表せるから素晴らしいのだ。
forループに変換できるかどうかは関係ない。
それが目的なら最初からfor書け。
2018/04/17(火) 09:01:13.11ID:???
要らないところでむやみやたらに再帰使っても可読性が落ちるだけ
2018/04/17(火) 09:08:54.59ID:???
フォルダ内のサブディレクトリ含むすべてのファイルの列挙とか、ツリー構造扱うときは再帰使わないと逆に分かりにくい。
何でもかんでも可読性が落ちると言ってるバカは自分が理解できないから貶めてるだけ。
分からないのお前だけだよw
何でもかんでも可読性が落ちると言ってるバカは自分が理解できないから貶めてるだけ。
分からないのお前だけだよw
2018/04/17(火) 10:59:45.26ID:???
コード中のハンドラ登録部分が探しにくいのですが
いい方法はありませんか?
だらだら長いメソッドチェーンになって関数単位になっているわけではないので
何で検索したらいいのか?ってなります
いい方法はありませんか?
だらだら長いメソッドチェーンになって関数単位になっているわけではないので
何で検索したらいいのか?ってなります
2018/04/17(火) 20:20:52.98ID:???
なれると再帰による反復のほうがシンプルで読みやすいのに
2018/04/17(火) 21:30:42.91ID:???
なれるも慣れないも再起なんて意識するようなものではないと思うがな
2018/04/17(火) 21:36:10.52ID:???
くっだらないマウントw
意識しなくてよかったならわざわざ言うまでもない。
慣れなかったなら慣れればいいだけ。
それだけのこと。
俺様は賢いから慣れるもなにも意識したことなんてない!ないんだ!聞いて聞いて!誉めて讃えてーっ、てかwww
意識しなくてよかったならわざわざ言うまでもない。
慣れなかったなら慣れればいいだけ。
それだけのこと。
俺様は賢いから慣れるもなにも意識したことなんてない!ないんだ!聞いて聞いて!誉めて讃えてーっ、てかwww
982Name_Not_Found
2018/04/17(火) 21:39:27.70ID:igkWy4Si983Name_Not_Found
2018/04/17(火) 21:48:21.91ID:igkWy4Si2018/04/17(火) 22:36:33.92ID:???
JavaなりCなりどっちだったか忘れたけど
サブディレクトリ漁りとかで再帰覚えたっけな
JavaScriptだと……なんかいい例が思いつかん
入口がJavaScriptだと再帰を勉強する材料が少ないのかも
サブディレクトリ漁りとかで再帰覚えたっけな
JavaScriptだと……なんかいい例が思いつかん
入口がJavaScriptだと再帰を勉強する材料が少ないのかも
2018/04/17(火) 23:36:08.60ID:???
2018/04/17(火) 23:38:57.73ID:???
2018/04/17(火) 23:56:11.28ID:???
動的型付言語ウザすぎる
Int型じゃねーのかよお前死ね
Int型じゃねーのかよお前死ね
2018/04/18(水) 00:07:07.34ID:???
なんで、stringはval.toString()なのに、intはval.toInt([radix])じゃなくてparseInt(val[, radix])なんですか
統一性がない
統一性がない
2018/04/18(水) 00:16:58.44ID:???
文字列は文字列で
parseInt("0"+variable, 10)なんてキモい書き方しないとNaNになるクソ言語
parseInt("0"+variable, 10)なんてキモい書き方しないとNaNになるクソ言語
2018/04/18(水) 00:20:37.13ID:???
2018/04/18(水) 00:29:17.59ID:???
>>989
parseInt("123") で 123 になるが?w
parseInt("123") で 123 になるが?w
2018/04/18(水) 00:40:17.93ID:???
parseInt('123'); // int 123 妥当
parseInt('0123'); // int 123 わかる 頭が0な文字列でも第2引数省略しても8進数扱いされなくなった
parseInt('abc'); // NaN わかりたくないけど、100歩譲ってわかるとしておこう
parseInt('abc123'); // NaN クソが
parseInt(''); // NaN shine
parseInt('0123'); // int 123 わかる 頭が0な文字列でも第2引数省略しても8進数扱いされなくなった
parseInt('abc'); // NaN わかりたくないけど、100歩譲ってわかるとしておこう
parseInt('abc123'); // NaN クソが
parseInt(''); // NaN shine
2018/04/18(水) 00:50:55.51ID:???
よく分からんが、abcという文字列も数値に変換しろ!
って言ってんのか?
って言ってんのか?
2018/04/18(水) 01:01:26.36ID:???
c++やjavaで文字列値・整数値のキャストに面倒があっても許容できる
php 柔軟
js クソ
php 柔軟
js クソ
2018/04/18(水) 01:22:15.74ID:???
jsは動的なのがそもそもゴミ
キャストが面倒くさいのもゴミ
キャストが面倒くさいのもゴミ
2018/04/18(水) 01:33:21.92ID:???
javascriptがゴミ
2018/04/18(水) 01:44:56.67ID:???
ひとりで何やってるの?
2018/04/18(水) 02:01:23.35ID:???
2018/04/18(水) 02:01:54.08ID:???
1000Name_Not_Found
2018/04/18(水) 02:03:22.54ID:???10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 42日 7時間 16分 59秒
新しいスレッドを立ててください。
life time: 42日 7時間 16分 59秒
10021002
Over 1000Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 【芸能】永野芽郁「アイシティ」CM動画取り下げ判明!「さまざまな影響を総合的に判断」不評だった田中圭との〝親密写真〟 [Ailuropoda melanoleuca★]
- 米とウクライナ 鉱物資源めぐる合意文書に署名 ウクライナ発表 [夜のけいちゃん★]
- 【サッカー】川崎F、アル・ナスルを3-2撃破 ACLE決勝進出 [ホイミン★]
- 【備蓄米放出】コメは何故なかなか流通しないのか? 関係者「精米やコメの袋詰めが追いつかない状況だ」 [シャチ★]
- 【八潮市陥没事故】下水道管内に取り残された男性運転手(74)の捜索活動を約2か月半ぶりに再開 [七波羅探題★]
- 【話題】「ゴリラ1頭vs人間100人」勝つのはどっち? 専門家が導き出した結論とは 米 [湛然★]
- 【悲報】ジジイ、うっかり女性専用車両に乗ってしまい激昂「ブサイクばっかりやないか!痴漢なんかするか!」 [481941988]
- 【悲報】チーギュロイドユーザー、ゴミと化したchmateを巡って醜く争い出すWWWWWWWWWWWWWWWWWWWWW [181318991]
- 【悲報】トランプ関税によりアメリカ国内の自動車価格は上昇不可避。100%国産車を買えないMAGA支持層に直撃か [519511584]
- (´・ω・`)おはよ
- 識者『蓮舫Rシールへのネガキャンは袴田事件のよう。さすが小池百合子。電通や三井不動産と伊藤忠のネガキャンだった』 [932029429]
- お前らの過去はハゲ───じゃあ未来は?