+ JavaScript の質問用スレッド vol.140 +
レス数が1000を超えています。これ以上書き込みはできません。
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/ このようにセミコロンを付けるとこんな気持ち悪い書き方ができます。 minification 絶対にしないことが保証されているなら
セミコロンは省略しまくって良いんだろうね minificationは関係ない。なりすまし工作乙。 実際はセミコロン省略向けLintの設定もあるんだし
省略したからと言ってなにか問題になることはないよね これもう宗教論争だからね
善悪二元論でやりあってるうちは永遠に決着しないよ >>907
if ( condition )
// do something
なら問題ないよー
セミコロンの有無での差は、これから確認してみるね 有名どころだとBootstrapがセミコロン省略派
よって、省略しても大規模プロジェクトできるのは証明済
好きにすりゃいいと思う >>905
一部の mifniiier だとエラーになる可能性があったようだけど
今は全然問題ないの? Bootstrapを大規模っていうのはちょっと違うかな?
まあいいや、とにかくminifyも問題ないので
宗教論争してもしょうがないね
自分はセミコロンなんて基本prettierに打ってもらえばいいじゃん派です あ
先日の integer 問題ですが
console.log(Number.MAX_SAFE_INTEGER)
とかが参考になって、整数どうしの演算でも相応の範囲で誤差がでないっぽい…?
「拡張倍精度浮動小数点数」とか「四倍精度浮動小数点数」だと話が変わるっぽい…?
正確な所は今から調べるんで、妙なことを書いてたらごめんなさい >>904
"ES6" が何を指すかによるんじゃないかなあ…?
「どういう機能を使い、どういうモノは避ける」みたいなのが示されれば、具体的な話も出来るかも
極論 IE11 でも「ES6 の範囲のだけど IE11 で問題ない」モノなら… あるテキストをテキストエリアに入力
それを.element1.value で取得して整形
整形したテキストを element2.textContent で別のテキストエリアに出力
てのをやってる。
ここまではうまく出来た。
で、出力用のテキストエリアのテキストを、JSからじゃなくて、キーボードとか普通の方法で一度変更したりすると
その後JSから .textContentを使って出力ができなくなる。
これどうして?回避方法ある? textareaの書き換えなら、textContentではなくvalueじゃないのか?
https://jsfiddle.net/8e64dmr7/ >>917
value でできました。
最初 value でやってたけど出来ないからtextContentにしたんだけど
なんでだろう…。
最初はボックス一つでインプットボックスにアウトプットしてたからなのかな? >>914
JSのNumber基本数値はDoubleなんだから
Doubleで整数が1刻みで表せる値の間に計算結果が収まる限り誤差は出ない
それかNumberの代わりにBignumを使うと良い >>919
御返答、ありがとうございます。
Chrome 75 系では
console.log(typeof 1152921504606846976n)
は bigint でした。
MDN では Firefox 68系で BigInt のサポートが始まる予定と書かれていますが
ベータ版で確認してみるのも手…なのでしょうか
なにぶん今 Windows8.1 なので、カナリア EDGE は…他に影響ないなら使ってみても良い…? 必要なら躊躇せず使えばいい
もしくはwith-proxyでも実装は大変だがスマートにかける
それか面倒くさいbigint系ライブラリで妥協するか ぐぐるとjsfiddleをvimモードで操作できるってかいてるけど
vimなんて選択肢keymapにないけどどういうこと? DOMSubtreeModifiedが非推奨とのことですがどのように書き換えたら良いでしょうか?
<div contenteditable></div>
<div contenteditable></div>
document.querySelectorAll( "[contenteditable]" ).forEach( function( value ) {
value.addEventListener( "DOMSubtreeModified", function( event ) {
console.log( value.innerText )
});
}); 残しといていいんじゃない?
MutationObserver使えるブラウザの時だけ使うようにすれば document.querySelectorAll("[contenteditable]").forEach(node => {
new MutationObserver(records => {
console.log(node.innerText);
}).observe(node, { childList: true, subtree: true });
}); 質問です
同一平面上に散るn個の点の
他の点との距離を全て計算したいんですが
どうすると計算回数少なくなりますかね? WebGLを利用してマトリックス演算するのが最も速い 誘導されて来ました。
JavascriptでDataTablesが使われているときに
左上のselectをTampermonkeyから自動でselectedにしても
表が更新されません。
どうすればいいのでしょうか。 ・特定のイベントを起こす
・スクリプトに介入して関数を実行する
・今ある表は消して自分で表を作る 初心者の質問ですみません
スクリプト側から「今ブラウザが(どの程度)アイドル状態か」を知る方法ってどんな手があるでしょうか?
タブを開いている最中(読み込んでいる最中)だとか、CPU負荷だとか色んな指標がありますが、
少なくとも今時分のタブだけじゃなく、ブラウザ全体での負荷量や作業量が知りたいのですが。 いちサイトのスクリプト風情が、ユーザー様のブラウザのリソース情報をぶっこ抜きたいという話? >>934
スクリプトからは自分の情報しか見れません。
他の情報は見れたら困る。絶対禁止。 へー、どうやってスクリプトから自分の情報見んだよ。書いてみろよ。 >>934
タブ割当メモリを見る(他のタブにも影響される)
performance.memory (.measureMemory策定中)
CPUの稼働状況を測る
performance.profile()
表示負荷を書けたくない描画は
requestPostAnimationFrame
アイドル中に処理がしたければ
requestIdleCallback
システムがロックされていたり、ユーザーのアイドル状態を検知するには
IdleDetector >>938
ありがとうございます
まさにrequestIdleCallback が目的のことに使えそうでした
急ぎではない処理を、ブラウザの他の重い作業(他のタブの作業やブラウザアドオン等)の邪魔をせずに始めたい
(そうしないとブラウザが果てしなく重くなり自分にとっても操作が緩慢になるだけなので)という要求があったのですが
こういう機能がついたということは他の人にとってもこれが欲しい状況はあるあるだったのでしょうね。
それにしてもこういう便利な機能を網羅的につらつら読んで知っていける本ってあるのでしょうか >>939
とりあえずここでも見たら?
https://www.chromestatus.com/features
HTML5ムーブメント時代からの重要点が1500項目くらいにまとまってるので
HTML、HTML5の基本を勉強してこれを全部読み、さらに興味があるものを深掘りするのが良いと思う 質問です(初心者です)
{(ストレージなど)を読み、加工して、書き込む}、という一連の処理部分があるとします、
そこを実行してる時に他の同類の処理が並行して走ると、ストレージの加工の前後関係が崩れてしまうという時に
{}内の動作だけは他の(タブやスレッドの?)処理を止めたい、割り込まれたくない、という時はどうしたらいいんでしょうか? >>941
一連だけど同期的じゃないんだよね
ほぼ同期的ならIDBでwriteモードで開けば
その間は他はwriteモードで開けない
汎用的にやるならLock APIを使って皆で管理する DBに制御する機能が無いなら
皆でルールを守って使うということになる ユーザからの入力文字数を一定以内に制限する必要があるのですが、
CSSで使える色名は何文字にするのが良いでしょうか?
rebeccapurpleのようにいきなり色んな理由で長名の色が入る事があるのではないかと危惧しています。
かと言って合理的で最小限の数値としてその数字を選んだ根拠を示さないと行けないので十分余裕を持って50文字とか、ちょっとキリ良く20文字位にする的な決定はできません。 >>945
LineモバイルのID入力欄はこんなかんじ
<input type="text" name="loginAccount" class="md01InputTxt FnRequired FnOneByteAlphabetNumeric FnMin FnAllowEnterToGo"
maxlength="20" minlength="6" placeholder="ログインID" value="" /> >>945
> CSSで使える色名
hex強制で6文字とか <input type="color">じゃダメなんですか? hexだと "6" だな
16進数強制で最大6文字(だめか) 一つのボタンに2つのイベントリスナってつけられますか?
なんとかしてできないでしょうか?
ユーザスクリプトで既存のサイトのボタンにイベントリスナを追加したいのですが。 あ、addEventListenerでふつうにできるっぽいかな? 複数のイベントリスナをつけるためのaddEventListener
.onclick=とかだと1個しか付けられなかった チラシの裏ですけれども
はあ、バグが取れない…
半日取り組んで成果なし。
もう疲れたよ… jQuery なら、こういう感じ。
「jquery event 複数」で検索!
$( 'CSS セレクター' ).on('click mouseenter', function() { 処理 } )
$( 'CSS セレクター' ).on({
'mouseenter': function() { 処理 },
'mouseleave': function() { 処理 }
}) 数字プロパティやlengthプロパティへのアクセスをケアする機能を持ったオブジェクトがarray >>965
自分で試せば分かる事は自分で試す、基本 ニートだけどhtml cssやってjs jquery勉強中だけど、どれぐらいできるようになったら就職していい? >>968
知識・技術がいくらあってもそんなにage評価されん
技術・知識がちょっとでも足りないとsage評価されっけど
なので出来ないことが無いように頑張れ
あったら全力で隠して、依頼があってから死ぬ気で身につけよう >>968
ちまたにある tips とされるもののうち
20個くらい間違ってると発見できたら
そのコード提出した上で職探すよろし
次スレで FAQ として掲げられたページの
カビ臭い部分全部直す、とかね >>970 >>971
サンクス、時間だけはあるから色んなサイトで一通りやってくるわ ・うるう年判別コードを Date 型をもちいて実装せよ
・ゼロパディング("3" -> "0003") を、if も slice も使わずに実装せよ
・0.1 + 0.1 = 0.2 というふうに誤差が出ないように、小数と小数の和を求めよ
…とか… それが基礎になるから、
Linux の数十の基本コマンド・シェルスクリプトと、
Ruby で、Sinatra をいじくって、Rails やれば、サーバー側のウェブプログラマー!
Rubyからは飛躍的に世界が広がるから、Kotlin, Go にも行ける Ruby なんかをやる時間があったら Python をやりましょう Rubyより jQuery の方が優先順位は遥かに高かろう
最初は jQuery なんて「そんな名前のものがあるんだな」程度でガン無視で良い >>968
今だったらLayoutAPI使ってgrid再現したり
PaintAPIでカスタムボタン要素作ってみたり
Houdini系を巧みに扱えればHTML、CSS、JSの技術と
一連のレンダリングフローの知識があると評価してもらえると思うよ 100点満点中1点ぐらいだろうけどな
(そんなもんやればわかること) スムーズスクロールをJSで書こうとしたけど駄目でした。
難しい・・・・ >>982
頑張れ
でもScrollIntoView()だけで済むようになっちゃうかも… レス数が1000を超えています。これ以上書き込みはできません。