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

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

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

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
451 : Name_Not - 2020/03/18(水) 13:41:04.28 ID:???.net (+37,+14,-13)
jQueryなら教えるけど
452 : Name_Not - 2020/03/18(水) 13:54:58.29 ID:???.net (+3,-29,-39)
2015年、脱jQueryが叫ばれてから5年が経ちました。シェアは10%以上増えました。今年は0.2%増えてます
http://rosie.5ch.net/test/read.cgi/liveplus/1584507264/
453 : Name_Not - 2020/03/18(水) 16:11:07.71 ID:???.net (+3,-29,-93)
そう。
bootstrapは最新の5でようやく脱jQueryとあいなった模様。
ただwebの3分の1を占めるWordPressがデフォでガッツリjQuery入れてるからね。
今年のWordPressの伸びは0.2%どころじゃないから、そう考えるの単体での採用は減ってんだろうね。
454 : Name_Not - 2020/03/19(木) 03:45:44.44 ID:???.net (+26,-30,-149)
jQuery が含むものは、
1. Ajax
2. 各ブラウザ互換性のPolyfill
3. CSS・セレクターなどを便利に拡張したもの
4. 便利で汎用的な関数

これらを各々、分離してもよいとは思う。
多くの人が使いたいのは、2, 3

1はaxios、4はLodash へ分離できる
455 : Name_Not - 2020/03/19(木) 06:34:44.87 ID:???.net (-1,-29,-11)
あのさぁw、slimビルドって知ってる?
なんでslimビルド版ができたかも。
456 : 445 - 2020/03/19(木) 08:20:59.04 ID:???.net (+5,-30,-150)
>>445
の続き

cards の中身をシャッフルしたいのなら、Lodash のshuffle を使う

let new_cards = _.shuffle( cards );

console.log( cards.map( x => x.number ) ) // シャッフル前
console.log( new_cards.map( x => x.number ) ) // シャッフル後
457 : Name_Not - 2020/03/19(木) 08:29:50.97 ID:???.net (+4,-30,-113)
>>454
> 1はaxios、4はLodash へ分離できる

axiosは初見だが、「Supports the Promise API」が目的なら、Fetch APIで十分な気がした
http://github.com/axios/axios/blob/master/README.md
http://developer.mozilla.org/ja/docs/Web/API/Fetch_API
458 : Name_Not - 2020/03/19(木) 08:39:41.73 ID:???.net (-1,-29,-21)
lodash使うならそもそも_.range(50).map()が使えるぞ
459 : 445 - 2020/03/19(木) 09:32:46.04 ID:???.net (+140,+29,-8)
さすがに、配列内の要素のシャッフルを、自作する人は、いないでしょ

ライブラリを使わないと無理
460 : Name_Not - 2020/03/19(木) 09:39:47.44 ID:???.net (+11,-30,-293)
>>454

> jQuery が含むものは、
> 1. Ajax
すでに分離されている。

> 2. 各ブラウザ互換性のPolyfill
もとからjQueryはPolyfillを提供していない。
どのブラウザでも動く機能のみを使ってるだけ

> 3. CSS・セレクターなどを便利に拡張したもの
分離されてる。Sizzle。使いたければ単体で使える。
jQueryはSizzleを前提としてるから取り除くことはできない。

> 4. 便利で汎用的な関数
それはjQueryが自身が内部で使うために作られたもの
便利だからAPIとして提供しているが取り除くことはできないし
jQueryにとって意味がないものは実装されていない。
便利で汎用的な関数を充実させるプロジェクトではない
461 : Name_Not - 2020/03/19(木) 10:25:00.30 ID:???.net (+3,-30,-29)
> どのブラウザでも動く機能のみを使ってるだけ

いいえ。たとえばquerySelector(All)を使えるときはそちらを使うようになっています。この時querySelectorが使えないブラウザの場合はsizzleが使われます。
462 : Name_Not - 2020/03/19(木) 10:28:01.31 ID:???.net (-1,-29,-6)
だからsizzleはどのブラウザでも動くだろ
463 : 454 - 2020/03/19(木) 10:32:30.78 ID:???.net (+8,-30,-220)
>>460
jQuery のソースコード内には、大量のPolyfill が書いてある!

Support: Android <=2.3 only
Support: Android<4.0
Support: Android <=4.0 only
Support: Android <=4.0 only, PhantomJS 1 only

Support: IE, Opera, Webkit

Support: IE6-11+
Support: IE <=8
Support: IE<9
Support: IE 9 - 10 only
Support: IE 9-11, Edge
Support: IE <=9 - 11, Edge 12 - 13
Support: IE 11, Edge

Support: real iOS 8.2 only

Support: Firefox<24
464 : Name_Not - 2020/03/19(木) 10:55:14.27 ID:???.net (+0,-29,-11)
>>463
それはPolyfillではありません
465 : Name_Not - 2020/03/19(木) 11:02:45.56 ID:???.net (+3,-29,-243)
Polyfillっていうのは特定のブラウザにないAPIを
JavaScriptを使って互換APIを実装することだからな
Polyfillが使われるとブラウザが持ってるAPIが変化してしまう。
本来ないはずのAPIが何故かできてしまう。

自分でPolyfillライブラリを使って意識的にやってるならいいが
jQueryが勝手にブラウザの足りない機能を埋めてたりすると
余計なことすんなって言われる。だからそんなことはやらない。

jQueryはブラウザの標準機能を変えたりしない
似たようなことをして互換性問題を起こしたのがPrototype
その反省から生まれたjQueryはPolyfillを提供しない
466 : Name_Not - 2020/03/19(木) 13:28:49.35 ID:???.net (+70,+29,-17)
>>459
大した手間でもなくない?
数行出し
ライブラリができる前から手で書いてたから
あんまり気にならんなあ
467 : Name_Not - 2020/03/19(木) 15:28:29.21 ID:???.net (+56,+28,-9)
まあMath.random()で出た順番に入れ替えるだけ
みたいな簡単なやつならそうだわな
ポンコツの俺でも出来る
468 : Name_Not - 2020/03/19(木) 15:51:01.26 ID:???.net (+13,-30,-74)
初心者すぎて恐る恐るお尋ねします

【環境】Windws10、Firefox74 共に64bit版
下のコードをnewWin10、10.htmlまで繰り返したいのですが、

function openWin(){
 newWin01 = window.open("hoge/01.html","newWin01","width=100,height=100");
 newWin01.focus();
}
469 : 468 - 2020/03/19(木) 15:54:19.92 ID:???.net (+34,-30,-83)
途中送信失礼しました

forで( var i = 01; i < 11; i++ )と書いた場合
01の0はそもそも返ってくるのか
iの値を記述の中にくっつけるにはどう書いたらよいのか不明でこちらに来てみました
ご教示いただければ幸いです
470 : Name_Not - 2020/03/19(木) 16:57:19.85 ID:???.net (+57,+29,-24)
そもそもその i 使ってなくね?
俺の愛は使う相手がいないが…
471 : Name_Not - 2020/03/19(木) 16:58:56.77 ID:???.net (+75,+17,-65)
>>469
数値リテラルつって、数字の書き方みたいなもんなんだが
01と書くと、それは8進数になる
まあ1だから十進数になおしても1なんだけど
472 : Name_Not - 2020/03/19(木) 17:02:33.36 ID:???.net (+2,-29,-6)
>>469
('' + i).padStart(2, '0')
473 : Name_Not - 2020/03/19(木) 17:08:46.89 ID:???.net (+4,-23,-9)
連続でopenはブラウザで制限されてるだろどうせ
474 : Name_Not - 2020/03/19(木) 17:21:57.93 ID:???.net (+46,+28,+0)
ブラクラやな
475 : Name_Not - 2020/03/19(木) 17:35:55.81 ID:???.net (+52,+29,-11)
NAOシフト「著作権侵害です!」
476 : Name_Not - 2020/03/19(木) 17:49:45.93 ID:???.net (+51,+18,+2)
>>471
ありがとうございます
477 : Name_Not - 2020/03/19(木) 18:01:22.34 ID:???.net (+47,-30,-45)
>>459
定番のFisher–Yates shuffleは自作したが、別段難しくなかった
478 : Name_Not - 2020/03/19(木) 22:39:36.72 ID:???.net (+94,+29,-84)
>>477
その自作というのはどのレベル?

・なにもない所から自分で考え出した
・解説、数式から自分でコードを起こした
・すでにある他の言語のコードをJavaScriptに翻訳した
・すでにあるJavaScriptのコードを自分なりのコードで書き直した
・関数をコピーした

どれも自作だけど、レベルがぜんぜん違うよね
479 : Name_Not - 2020/03/19(木) 23:08:01.91 ID:???.net (+8,-14,-4)
言語から自作してろ
480 : Name_Not - 2020/03/19(木) 23:13:06.25 ID:???.net (+57,+29,-15)
フィッシャーイェーツは
わりとみんなたどり着きやすいやり方じゃね?
一個ずつランダムに取り出すって
481 : Name_Not - 2020/03/19(木) 23:16:55.55 ID:???.net (+49,-30,-141)
>>478
> ・なにもない所から自分で考え出した

Fisher–Yates shuffleと書いてるのに、なぜこの選択肢が出てくる?

> ・解説、数式から自分でコードを起こした

公式サイトにあるアルゴリズムをコードに起こしただけだから、これ
アルゴリズムからコード化はプログラマなら基本だろう?
482 : Name_Not - 2020/03/19(木) 23:35:46.12 ID:???.net (+57,+29,-43)
トランプランダムに並べろって言われたら
よく切って1枚置く、よく切って1枚置く…ってやるだろ普通
FYシャッフルてのはそれくらいありがちだ
483 : Name_Not - 2020/03/19(木) 23:54:06.22 ID:???.net (+180,+29,-49)
>>481
アルゴリズムからコードを起こしたってことは
言語を置き換えたってことだよね?

それとも元のアルゴリズムにコードレベルのものはなかった?
それちゃんとテストした?バグがないことをどうやって証明してる?
484 : Name_Not - 2020/03/20(金) 03:11:38.92 ID:???.net (+57,+29,-34)
それが質問かな?
じゃあJS固有の話じゃないからよそでやってね。
ひとりで寂しいからってここで話し相手募るなジジイ。
485 : Name_Not - 2020/03/20(金) 05:15:48.79 ID:???.net (+20,-21,-19)
>>459
randamな位置の要素を取り出してくだけでいいじゃん
486 : Name_Not - 2020/03/20(金) 08:46:56.48 ID:???.net (+77,+29,-66)
>>483
> アルゴリズムからコードを起こしたってことは
> 言語を置き換えたってことだよね?

関数一つ定義しただけで言語が書き換わるわけないだろ
ここまで頭が悪い奴とは思わなかった

> それとも元のアルゴリズムにコードレベルのものはなかった?

文章しかなかった

> それちゃんとテストした?バグがないことをどうやって証明してる?

テストした
487 : 445 - 2020/03/20(金) 08:52:37 ID:???.net (+3,-29,-102)
自作するぐらいなら、Lodash などの多くで使われている、ライブラリを使う

自作は、テストが大変だし、
汎用的なものはできるだけ、ライブラリで済ませたい

webpack で、Lodashの個別の関数だけを読み込めるし、サイズも大したことないから
488 : Name_Not - 2020/03/20(金) 09:38:22.06 ID:???.net (+57,+29,-13)
そうやって人の作った物使うだけだと
いつまで経っても自分で何か作ることなんて出来ないよお?
489 : Name_Not - 2020/03/20(金) 09:40:08.74 ID:???.net (+76,+29,-13)
>>483
> 言語を置き換えたってことだよね?

何その謎論理
アルゴリズムをなんだと思ってるの?
490 : Name_Not - 2020/03/20(金) 17:19:25.78 ID:???.net (+3,-29,-137)
Fisher–Yatesって制御構造の練習問題として使われてもおかしくないぐらいに単純じゃん
よく題材になるソートアルゴリズムよりも簡単

Fisher–Yatesすら実装出来ないレベルなら、「僕は日本語で説明されてもコードを書けないので、コピペコードをください」っていってるようなもの
491 : Name_Not - 2020/03/20(金) 17:30:07 ID:9Qjbx9QY.net (+74,+30,-52)
>>478
>・なにもない所から自分で考え出した

むしろそうでない方が優秀なんじゃね?
ふっつーのボンクラ初心者が頭ひねって考えて
最初に出てくるのはFY法だろう
少なくとも俺はそうだったわ
492 : Name_Not - 2020/03/20(金) 17:35:54 ID:???.net (+86,+29,-16)
>>491
自分で考えてFY法に辿り着いたなら、君は十分優秀だよ
493 : Name_Not - 2020/03/20(金) 17:44:40 ID:9Qjbx9QY.net (+73,+29,-8)
>>492
えええええ
これより簡単に思いつくのってどんなの?
494 : Name_Not - 2020/03/20(金) 22:43:43.45 ID:???.net (-2,-30,-41)
localeCompareのusage:"sort"とusage:"search"て具体的に何が変わるん?
495 : Name_Not - 2020/03/20(金) 23:10:45.07 ID:???.net (+80,+29,-7)
>>493
世の中には>>459>>483のような、無理と諦めて考えることを放棄する人間がいるのだよ
496 : Name_Not - 2020/03/21(土) 02:17:35 ID:???.net (+68,+0,-2)
ID有りのスレにしない?
自演っぽいのばっかじゃん
497 : Name_Not - 2020/03/21(土) 06:36:04 ID:???.net (+57,+29,-49)
もう今まで何十回もスレが分岐したから
それで淘汰されて残ったのがID無しのスレだから
歴史を繰り返すな
498 : Name_Not - 2020/03/21(土) 08:23:47.26 ID:???.net (+66,+29,-19)
>>496
作ってくれても良いけど、少なくとも、2-3人は定住する人間がいないと機能しない
「誰かやれ」な感じなら、100%無理だと思う
499 : Name_Not - 2020/03/21(土) 11:21:19 ID:???.net (+12,-29,-52)
>>496
自分が移動するのは簡単だが、他人を動かすのは難しい
頑張れ

+ JavaScript の質問用スレッド vol.123 + [無断転載禁止]©2ch.net
http://mevius.5ch.net/test/read.cgi/tech/1491143438/
500 : Name_Not - 2020/03/21(土) 13:16:28 ID:???.net (+91,+29,-11)
※念の為に言っておくが、他のスレが出来たら
両方のスレに行くだけです。つまり俺のスレが増える。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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