X



+ JavaScript の質問用スレッド vol.140 +
レス数が1000を超えています。これ以上書き込みはできません。
0001Name_Not_Found
垢版 |
2019/05/19(日) 16:07:12.99ID:2J4OYdDV
JavaScript を自ら学ぶ人のための質問スレッドです。
次スレは>>950が(本スレで改善案があれば考慮して)立ててください

■規則/推奨ルール
・メール欄を空欄にし、名前にレス番を入れることを強く推奨(なりすまし防止)
・質問内容は具体的に。言葉だけでなく、出来る限り再現性を確認したサンプルコードの掲示。
・質問テンプレートの利用推奨。
・質問への「答え」から解離した議論はよそでやること。
■禁止行為
・丸投げ質問
・迷惑スクリプトの質問
・オレオレ用語の使用(一般的な用語を使用する事)
・煽り、批判等の他人を不快にさせる行為
■質問テンプレート
【環境】OS, ブラウザをバージョンと共に記入してください。
【条件】期待する回答の条件を書いてください。
【何をしたのか】何をしたら問題の現象が発生するのか。再現手順を具体的に書いてください。
【エラーメッセージ】エラーメッセージがあれば正確に書き写してください。
【期待する結果】最終的にどういう結果を望んでいるのか、を書いてください。
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
 1レスに収まらないならコード投稿サイトを利用してください。
 http://jsdo.it/ http://jsbin.com/ http://jsfiddle.net/ http://ideone.com/
■回答者へ
・回答には多様性があります。他人の回答を尊重してください
・動作ブラウザや環境が限られる場合は、それを明記してください
・他人の回答を批判する代わりに、自分ならこう書くという例を示してください
・質問者がJavaScriptでなければ実現できないと勘違いしてるなら、その否定としてHTMLとCSSで実装しても良い
・他人の回答を見たくないのであれば、文句をつける代わりにNGにして見えないようにしてください。文句をつける=荒らしです

■前スレ
+ JavaScript の質問用スレッド vol.139 +
https://mevius.5ch.net/test/read.cgi/hp/1555750241/
0900Name_Not_Found
垢版 |
2019/06/29(土) 01:30:31.45ID:???
このようにセミコロンを付けるとこんな気持ち悪い書き方ができます。
0902Name_Not_Found
垢版 |
2019/06/29(土) 01:48:43.84ID:???
minification 絶対にしないことが保証されているなら
セミコロンは省略しまくって良いんだろうね
0903Name_Not_Found
垢版 |
2019/06/29(土) 01:59:53.60ID:???
minificationは関係ない。なりすまし工作乙。
0904Name_Not_Found
垢版 |
2019/06/29(土) 05:29:01.38ID:???
ES6ってみんな使ってる?
0905Name_Not_Found
垢版 |
2019/06/29(土) 06:45:26.25ID:???
実際はセミコロン省略向けLintの設定もあるんだし
省略したからと言ってなにか問題になることはないよね
0906Name_Not_Found
垢版 |
2019/06/29(土) 07:05:49.89ID:???
これもう宗教論争だからね
善悪二元論でやりあってるうちは永遠に決着しないよ
0907Name_Not_Found
垢版 |
2019/06/29(土) 07:10:23.85ID:???
ifとかの{}も省略したらあかんのかな
0908Name_Not_Found
垢版 |
2019/06/29(土) 08:52:35.75ID:???
セミコロンね
もうすぐ暑い夏か
0909Name_Not_Found (ワッチョイ 138f-QRBW)
垢版 |
2019/06/29(土) 09:34:29.64ID:OPCKDJxz0
>>907
if ( condition )
// do something

なら問題ないよー
セミコロンの有無での差は、これから確認してみるね
0910Name_Not_Found
垢版 |
2019/06/29(土) 09:46:42.70ID:???
有名どころだとBootstrapがセミコロン省略派
よって、省略しても大規模プロジェクトできるのは証明済
好きにすりゃいいと思う
0911Name_Not_Found (ワッチョイ 138f-QRBW)
垢版 |
2019/06/29(土) 09:47:01.04ID:OPCKDJxz0
>>905
一部の mifniiier だとエラーになる可能性があったようだけど
今は全然問題ないの?
0912Name_Not_Found
垢版 |
2019/06/29(土) 09:53:47.40ID:???
セミコロンはPrettierがつけるもの
0913Name_Not_Found
垢版 |
2019/06/29(土) 09:57:21.06ID:???
Bootstrapを大規模っていうのはちょっと違うかな?
まあいいや、とにかくminifyも問題ないので
宗教論争してもしょうがないね

自分はセミコロンなんて基本prettierに打ってもらえばいいじゃん派です
0914Name_Not_Found (ワッチョイ 138f-QRBW)
垢版 |
2019/06/29(土) 10:01:51.78ID:OPCKDJxz0


先日の integer 問題ですが
console.log(Number.MAX_SAFE_INTEGER)
とかが参考になって、整数どうしの演算でも相応の範囲で誤差がでないっぽい…?

「拡張倍精度浮動小数点数」とか「四倍精度浮動小数点数」だと話が変わるっぽい…?


正確な所は今から調べるんで、妙なことを書いてたらごめんなさい
0915Name_Not_Found (ワッチョイ 138f-QRBW)
垢版 |
2019/06/29(土) 10:16:21.73ID:OPCKDJxz0
>>904
"ES6" が何を指すかによるんじゃないかなあ…?
「どういう機能を使い、どういうモノは避ける」みたいなのが示されれば、具体的な話も出来るかも

極論 IE11 でも「ES6 の範囲のだけど IE11 で問題ない」モノなら…
0916Name_Not_Found
垢版 |
2019/06/29(土) 11:02:11.44ID:Idr4GD0T
あるテキストをテキストエリアに入力
それを.element1.value で取得して整形
整形したテキストを element2.textContent で別のテキストエリアに出力
てのをやってる。
ここまではうまく出来た。

で、出力用のテキストエリアのテキストを、JSからじゃなくて、キーボードとか普通の方法で一度変更したりすると
その後JSから .textContentを使って出力ができなくなる。

これどうして?回避方法ある?
0918Name_Not_Found
垢版 |
2019/06/29(土) 12:19:05.04ID:Idr4GD0T
>>917
value でできました。
最初 value でやってたけど出来ないからtextContentにしたんだけど
なんでだろう…。
最初はボックス一つでインプットボックスにアウトプットしてたからなのかな?
0919Name_Not_Found
垢版 |
2019/06/29(土) 12:45:07.21ID:???
>>914
JSのNumber基本数値はDoubleなんだから
Doubleで整数が1刻みで表せる値の間に計算結果が収まる限り誤差は出ない
それかNumberの代わりにBignumを使うと良い
0920Name_Not_Found (ワッチョイ 138f-QRBW)
垢版 |
2019/06/29(土) 13:18:53.54ID:OPCKDJxz0
>>919
御返答、ありがとうございます。

Chrome 75 系では
console.log(typeof 1152921504606846976n)
は bigint でした。



MDN では Firefox 68系で BigInt のサポートが始まる予定と書かれていますが
ベータ版で確認してみるのも手…なのでしょうか

なにぶん今 Windows8.1 なので、カナリア EDGE は…他に影響ないなら使ってみても良い…?
0921Name_Not_Found
垢版 |
2019/06/29(土) 18:11:31.50ID:???
必要なら躊躇せず使えばいい
もしくはwith-proxyでも実装は大変だがスマートにかける
それか面倒くさいbigint系ライブラリで妥協するか
0922642
垢版 |
2019/06/29(土) 18:17:03.19ID:???
(*´艸`*)
0923Name_Not_Found
垢版 |
2019/06/29(土) 20:10:44.38ID:Idr4GD0T
ぐぐるとjsfiddleをvimモードで操作できるってかいてるけど
vimなんて選択肢keymapにないけどどういうこと?
0924Name_Not_Found
垢版 |
2019/06/29(土) 20:15:20.16ID:Idr4GD0T
自己解決
vimはなくしたようですね。
0925Name_Not_Found
垢版 |
2019/06/30(日) 18:01:04.75ID:5hpWwe94
DOMSubtreeModifiedが非推奨とのことですがどのように書き換えたら良いでしょうか?

<div contenteditable></div>
<div contenteditable></div>

document.querySelectorAll( "[contenteditable]" ).forEach( function( value ) {
value.addEventListener( "DOMSubtreeModified", function( event ) {
console.log( value.innerText )
});
});
0926Name_Not_Found
垢版 |
2019/06/30(日) 18:13:26.97ID:???
残しといていいんじゃない?
MutationObserver使えるブラウザの時だけ使うようにすれば
0927Name_Not_Found
垢版 |
2019/06/30(日) 18:44:01.25ID:???
document.querySelectorAll("[contenteditable]").forEach(node => {
new MutationObserver(records => {
console.log(node.innerText);
}).observe(node, { childList: true, subtree: true });
});
0929Name_Not_Found
垢版 |
2019/07/02(火) 01:38:44.20ID:???
質問です
同一平面上に散るn個の点の
他の点との距離を全て計算したいんですが
どうすると計算回数少なくなりますかね?
0930Name_Not_Found
垢版 |
2019/07/02(火) 06:01:37.29ID:???
プログラム板のアルゴリズムのスレで、聞けば?
0931Name_Not_Found
垢版 |
2019/07/02(火) 07:12:15.30ID:???
WebGLを利用してマトリックス演算するのが最も速い
0932Name_Not_Found
垢版 |
2019/07/02(火) 09:36:14.53ID:???
誘導されて来ました。
JavascriptでDataTablesが使われているときに
左上のselectをTampermonkeyから自動でselectedにしても
表が更新されません。
どうすればいいのでしょうか。
0933Name_Not_Found
垢版 |
2019/07/02(火) 19:12:57.71ID:???
・特定のイベントを起こす
・スクリプトに介入して関数を実行する
・今ある表は消して自分で表を作る
0934Name_Not_Found
垢版 |
2019/07/03(水) 17:35:35.77ID:???
初心者の質問ですみません
スクリプト側から「今ブラウザが(どの程度)アイドル状態か」を知る方法ってどんな手があるでしょうか?
タブを開いている最中(読み込んでいる最中)だとか、CPU負荷だとか色んな指標がありますが、
少なくとも今時分のタブだけじゃなく、ブラウザ全体での負荷量や作業量が知りたいのですが。
0935Name_Not_Found
垢版 |
2019/07/03(水) 18:03:50.92ID:???
いちサイトのスクリプト風情が、ユーザー様のブラウザのリソース情報をぶっこ抜きたいという話?
0936Name_Not_Found
垢版 |
2019/07/03(水) 18:11:10.87ID:???
>>934
スクリプトからは自分の情報しか見れません。
他の情報は見れたら困る。絶対禁止。
0937Name_Not_Found
垢版 |
2019/07/03(水) 18:45:59.62ID:???
へー、どうやってスクリプトから自分の情報見んだよ。書いてみろよ。
0938Name_Not_Found
垢版 |
2019/07/03(水) 19:43:32.92ID:???
>>934

タブ割当メモリを見る(他のタブにも影響される)
performance.memory (.measureMemory策定中)

CPUの稼働状況を測る
performance.profile()

表示負荷を書けたくない描画は
requestPostAnimationFrame

アイドル中に処理がしたければ
requestIdleCallback

システムがロックされていたり、ユーザーのアイドル状態を検知するには
IdleDetector
0939Name_Not_Found
垢版 |
2019/07/03(水) 20:35:09.81ID:???
>>938
ありがとうございます
まさにrequestIdleCallback が目的のことに使えそうでした
急ぎではない処理を、ブラウザの他の重い作業(他のタブの作業やブラウザアドオン等)の邪魔をせずに始めたい
(そうしないとブラウザが果てしなく重くなり自分にとっても操作が緩慢になるだけなので)という要求があったのですが
こういう機能がついたということは他の人にとってもこれが欲しい状況はあるあるだったのでしょうね。
それにしてもこういう便利な機能を網羅的につらつら読んで知っていける本ってあるのでしょうか
0940Name_Not_Found
垢版 |
2019/07/03(水) 20:58:00.20ID:???
>>939
とりあえずここでも見たら?
https://www.chromestatus.com/features
HTML5ムーブメント時代からの重要点が1500項目くらいにまとまってるので
HTML、HTML5の基本を勉強してこれを全部読み、さらに興味があるものを深掘りするのが良いと思う
0941Name_Not_Found
垢版 |
2019/07/04(木) 12:00:10.54ID:???
質問です(初心者です)

{(ストレージなど)を読み、加工して、書き込む}、という一連の処理部分があるとします、
そこを実行してる時に他の同類の処理が並行して走ると、ストレージの加工の前後関係が崩れてしまうという時に
{}内の動作だけは他の(タブやスレッドの?)処理を止めたい、割り込まれたくない、という時はどうしたらいいんでしょうか?
0942Name_Not_Found
垢版 |
2019/07/04(木) 12:36:44.39ID:???
>>941
一連だけど同期的じゃないんだよね
ほぼ同期的ならIDBでwriteモードで開けば
その間は他はwriteモードで開けない
汎用的にやるならLock APIを使って皆で管理する
0943Name_Not_Found
垢版 |
2019/07/04(木) 16:11:12.75ID:???
DBで制御するという手は打てない?
0944Name_Not_Found
垢版 |
2019/07/05(金) 07:07:43.26ID:???
DBに制御する機能が無いなら
皆でルールを守って使うということになる
0945Name_Not_Found
垢版 |
2019/07/05(金) 13:01:21.41ID:???
ユーザからの入力文字数を一定以内に制限する必要があるのですが、
CSSで使える色名は何文字にするのが良いでしょうか?
rebeccapurpleのようにいきなり色んな理由で長名の色が入る事があるのではないかと危惧しています。
かと言って合理的で最小限の数値としてその数字を選んだ根拠を示さないと行けないので十分余裕を持って50文字とか、ちょっとキリ良く20文字位にする的な決定はできません。
0946Name_Not_Found (ワッチョイ 238f-26dl)
垢版 |
2019/07/05(金) 13:58:08.51ID:yJLLMlRM0
>>945
LineモバイルのID入力欄はこんなかんじ

<input type="text" name="loginAccount" class="md01InputTxt FnRequired FnOneByteAlphabetNumeric FnMin FnAllowEnterToGo"
maxlength="20" minlength="6" placeholder="ログインID" value="" />
0947Name_Not_Found (ワッチョイ 238f-26dl)
垢版 |
2019/07/05(金) 13:59:47.06ID:yJLLMlRM0
>>945
> CSSで使える色名

hex強制で6文字とか
0948Name_Not_Found
垢版 |
2019/07/05(金) 14:00:18.21ID:???
<input type="color">じゃダメなんですか?
0949Name_Not_Found (ワッチョイ 238f-26dl)
垢版 |
2019/07/05(金) 14:01:49.05ID:yJLLMlRM0
hexだと "6" だな
16進数強制で最大6文字(だめか)
0952Name_Not_Found
垢版 |
2019/07/06(土) 10:51:43.78ID:lnUTT+U+
一つのボタンに2つのイベントリスナってつけられますか?
なんとかしてできないでしょうか?
ユーザスクリプトで既存のサイトのボタンにイベントリスナを追加したいのですが。
0953Name_Not_Found
垢版 |
2019/07/06(土) 11:05:47.47ID:lnUTT+U+
あ、addEventListenerでふつうにできるっぽいかな?
0955Name_Not_Found
垢版 |
2019/07/06(土) 20:31:55.54ID:???
複数のイベントリスナをつけるためのaddEventListener
.onclick=とかだと1個しか付けられなかった
0956Name_Not_Found
垢版 |
2019/07/06(土) 20:35:02.46ID:???
チラシの裏ですけれども
はあ、バグが取れない…
半日取り組んで成果なし。
もう疲れたよ…
0958Name_Not_Found
垢版 |
2019/07/07(日) 02:33:24.43ID:???
なんとかドリブン
なんとかファースト
0960Name_Not_Found
垢版 |
2019/07/07(日) 08:28:46.54ID:???
jQuery なら、こういう感じ。
「jquery event 複数」で検索!

$( 'CSS セレクター' ).on('click mouseenter', function() { 処理 } )

$( 'CSS セレクター' ).on({
'mouseenter': function() { 処理 },
'mouseleave': function() { 処理 }
})
0961Name_Not_Found
垢版 |
2019/07/07(日) 12:16:27.93ID:8iiFsdca
objectとarrayの違いってなんだっけ
0962Name_Not_Found
垢版 |
2019/07/07(日) 13:18:07.45ID:???
数字プロパティやlengthプロパティへのアクセスをケアする機能を持ったオブジェクトがarray
0966Name_Not_Found
垢版 |
2019/07/07(日) 16:57:43.29ID:???
>>965
自分で試せば分かる事は自分で試す、基本
0968Name_Not_Found
垢版 |
2019/07/09(火) 03:29:25.21ID:???
ニートだけどhtml cssやってjs jquery勉強中だけど、どれぐらいできるようになったら就職していい?
0970Name_Not_Found
垢版 |
2019/07/09(火) 12:24:08.01ID:???
>>968
知識・技術がいくらあってもそんなにage評価されん
技術・知識がちょっとでも足りないとsage評価されっけど

なので出来ないことが無いように頑張れ
あったら全力で隠して、依頼があってから死ぬ気で身につけよう
0971Name_Not_Found
垢版 |
2019/07/09(火) 14:23:47.67ID:???
>>968
ちまたにある tips とされるもののうち
20個くらい間違ってると発見できたら
そのコード提出した上で職探すよろし

次スレで FAQ として掲げられたページの
カビ臭い部分全部直す、とかね
0972Name_Not_Found
垢版 |
2019/07/09(火) 16:11:16.89ID:???
>>970 >>971
サンクス、時間だけはあるから色んなサイトで一通りやってくるわ
0973Name_Not_Found
垢版 |
2019/07/10(水) 07:14:49.33ID:???
・うるう年判別コードを Date 型をもちいて実装せよ
・ゼロパディング("3" -> "0003") を、if も slice も使わずに実装せよ
・0.1 + 0.1 = 0.2 というふうに誤差が出ないように、小数と小数の和を求めよ

…とか…
0974Name_Not_Found
垢版 |
2019/07/10(水) 08:01:18.59ID:???
それが基礎になるから、

Linux の数十の基本コマンド・シェルスクリプトと、
Ruby で、Sinatra をいじくって、Rails やれば、サーバー側のウェブプログラマー!

Rubyからは飛躍的に世界が広がるから、Kotlin, Go にも行ける
0975Name_Not_Found
垢版 |
2019/07/10(水) 10:14:07.06ID:???
Ruby なんかをやる時間があったら Python をやりましょう
0976Name_Not_Found
垢版 |
2019/07/10(水) 11:55:20.46ID:???
Rubyの世界は飛躍的に狭まってるがなw
0977Name_Not_Found
垢版 |
2019/07/10(水) 12:03:00.06ID:???
Rubyより jQuery の方が優先順位は遥かに高かろう
最初は jQuery なんて「そんな名前のものがあるんだな」程度でガン無視で良い
0978Name_Not_Found
垢版 |
2019/07/12(金) 06:42:10.68ID:???
>>968
今だったらLayoutAPI使ってgrid再現したり
PaintAPIでカスタムボタン要素作ってみたり
Houdini系を巧みに扱えればHTML、CSS、JSの技術と
一連のレンダリングフローの知識があると評価してもらえると思うよ
0979Name_Not_Found
垢版 |
2019/07/27(土) 10:23:40.77ID:???
100点満点中1点ぐらいだろうけどな
(そんなもんやればわかること)
0980Name_Not_Found
垢版 |
2019/07/31(水) 17:30:00.05ID:nbAt67+R
>>72
<br/>は?
0982Name_Not_Found
垢版 |
2019/08/31(土) 01:24:32.98ID:???
スムーズスクロールをJSで書こうとしたけど駄目でした。
難しい・・・・
0988Name_Not_Found
垢版 |
2019/09/06(金) 18:36:52.18ID:???
>>982
頑張れ

でもScrollIntoView()だけで済むようになっちゃうかも…
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況