!extend:checked:vvvvvv:1000:512
JavaScript を自ら学ぶ人のための質問スレッドです。
>>2-5のテンプレを読んだ上で質問してください。次スレは>>950が>>2の「次スレの立て方」を元に立ててください
■質問を書く上で
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
(ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
(3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。
(4) 常に自発的に調べる心構えを持ってください。
具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。
わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。
(5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。
(6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。
※必ず「問題の事象が再現されること」を確認してください。
必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。
(7) サンプルコードに HTML が含まれる場合は http://validator.w3.org/ で [Check] してみてください。
(8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2の質問テンプレートを活用してみてください。
(9) ライブラリ関連の質問は禁止です。関連スレにあるライブラリ質問スレで質問して下さい。
(10) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。
■前スレ
JavaScript の質問用スレッド vol.125
https://mevius.5ch.net/test/read.cgi/tech/1659855460/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:: EXT was configured
探検
JavaScript の質問用スレッド vol.126
1デフォルトの名無しさん (オッペケ Sr9f-tek/ [126.254.232.20])
2023/12/09(土) 17:40:39.92ID:Mnb70srnr159デフォルトの名無しさん (ワッチョイ 13d2-fCbz [240b:12:203:6300:*])
2024/02/29(木) 00:27:46.28ID:XLzCkQ6P0 >>158
なるほどなぁ、なら何とかツギハギで頑張ってパッチするわけか
んで、.selectValueで出来そうだと思いました!って言われても
そんなメソッドjQueryには無いぞ
ttps://api.jquery.com/
何らかのライブラリなりで
jQueryのメソッドを拡張・追加すれば実現出来るが
それを何の前提知識も無く「どうやって使えば良いですか?」と言われても何もアドバイス出来んぞ
jQueryはもう相当うろ覚えだが
.valメソッドとかを使うんじゃなかったか?
セレクトボックスは動きが特殊だから.valで動かんかったら他のメソッド探してみろ
jQueryの公式ドキュメントを読め
JavaScriptの話ならMDNをちゃんと読め
そうとしか言えんわ頑張れ
なるほどなぁ、なら何とかツギハギで頑張ってパッチするわけか
んで、.selectValueで出来そうだと思いました!って言われても
そんなメソッドjQueryには無いぞ
ttps://api.jquery.com/
何らかのライブラリなりで
jQueryのメソッドを拡張・追加すれば実現出来るが
それを何の前提知識も無く「どうやって使えば良いですか?」と言われても何もアドバイス出来んぞ
jQueryはもう相当うろ覚えだが
.valメソッドとかを使うんじゃなかったか?
セレクトボックスは動きが特殊だから.valで動かんかったら他のメソッド探してみろ
jQueryの公式ドキュメントを読め
JavaScriptの話ならMDNをちゃんと読め
そうとしか言えんわ頑張れ
160質問者 (ワッチョイ 23e7-MEMs [118.87.46.101])
2024/03/01(金) 23:06:30.38ID:Id25sy0k0 いろいろとありがとうございます。
161質問者 (ワッチョイ 23e7-MEMs [118.87.46.101])
2024/03/01(金) 23:23:12.37ID:Id25sy0k0 やりたいこと
・プログラムのデバッガみたいなステップ実行ができるWEBで作成されたものを改修。
・スクロールしていくので、複数行リストボックスで現在行を選択表示して、実現。PC版では動く。
・しかし、モバイル版では、html形式の複数行リストボックスは1行のドロップダウンリストBOXになってしまう。
どうもこれは、モバイルの仕様なようで、実現するのは不可能ぽい。
過去にある人がjqueryで、モバイルで複数行リストボックスみたいな事は実現しているが、これはあくまでも表示のみで選択は不可。
・複数行リストボックスをリスト型で実現している。なので、Val()でも、スクロールして、選択表示できない。
ほかの方法で考えた方が良いですかね?ただ、改修なので、別のフレームワークに変えるのは無理ですね。
・プログラムのデバッガみたいなステップ実行ができるWEBで作成されたものを改修。
・スクロールしていくので、複数行リストボックスで現在行を選択表示して、実現。PC版では動く。
・しかし、モバイル版では、html形式の複数行リストボックスは1行のドロップダウンリストBOXになってしまう。
どうもこれは、モバイルの仕様なようで、実現するのは不可能ぽい。
過去にある人がjqueryで、モバイルで複数行リストボックスみたいな事は実現しているが、これはあくまでも表示のみで選択は不可。
・複数行リストボックスをリスト型で実現している。なので、Val()でも、スクロールして、選択表示できない。
ほかの方法で考えた方が良いですかね?ただ、改修なので、別のフレームワークに変えるのは無理ですね。
162デフォルトの名無しさん (ワッチョイ 47f6-WOak [2400:2200:714:c52d:*])
2024/03/02(土) 00:10:12.99ID:Rcnd56Cm0 sizeが指定されているSELECTタグのdisplayをnoneにして消す
代わりに自分でsize分だけのリストなりボタンなりを追加する
これをjsでモバイル表示のときだけ実現すりゃいいんじゃない
代わりに自分でsize分だけのリストなりボタンなりを追加する
これをjsでモバイル表示のときだけ実現すりゃいいんじゃない
163質問者 (ワッチョイ 23e7-MEMs [118.87.46.101])
2024/03/02(土) 11:13:20.78ID:TgRbMsKE0 >代わりに自分でsize分だけのリストなりボタンなりを追加する
>これをjsでモバイル表示のときだけ実現すりゃいいんじゃない
レスありがとうございます。
データが100行あります。
今、複数行選択リストボックス(select size=25)では、25行表示できるエリアがあって、75行が隠れています。
99行目のListをスクリプトで選択(人間は選択しません。見てるだけです。)したら、自動的にそこまでスクロールしてくれます。
リスト(ul,li)ではスクロールまでしてくれず、隠れてしまって、実現はできないと思うのですが...
>これをjsでモバイル表示のときだけ実現すりゃいいんじゃない
レスありがとうございます。
データが100行あります。
今、複数行選択リストボックス(select size=25)では、25行表示できるエリアがあって、75行が隠れています。
99行目のListをスクリプトで選択(人間は選択しません。見てるだけです。)したら、自動的にそこまでスクロールしてくれます。
リスト(ul,li)ではスクロールまでしてくれず、隠れてしまって、実現はできないと思うのですが...
164質問者 (ワッチョイ 23e7-MEMs [118.87.46.101])
2024/03/02(土) 11:46:08.42ID:TgRbMsKE0 <html>
<select id='now_exe_prg_row' size=25>
<option value="1">プログラム1行目</option>
<option value="2">プログラム2行目</option>
:
<option value="100">プログラム100行目</option>
</select>
<js>
$('now_exe_prg_row').val('99')
これをlistで実現したいのですが、無理ですよね?
<select id='now_exe_prg_row' size=25>
<option value="1">プログラム1行目</option>
<option value="2">プログラム2行目</option>
:
<option value="100">プログラム100行目</option>
</select>
<js>
$('now_exe_prg_row').val('99')
これをlistで実現したいのですが、無理ですよね?
165デフォルトの名無しさん (ワッチョイ 47f6-WOak [2400:2200:714:c52d:*])
2024/03/02(土) 12:45:11.55ID:Rcnd56Cm0 無理じゃない
jsでdom操作はいくらでもできる
ul liでoptionのような動作をするカスタムのリストボックスも作成可能でcssフレームワークではよくつかう手法
そういうカスタムのWebComponentを作るといいよ
selectから情報をひっぱってきて外観をul liでカスタムコンポーネントを作り、liのクリックイベントリスナーでselect要素のselectedIndexを変更すればいい
select要素はモバイル環境ではdisplayをnoneにする
jsでdom操作はいくらでもできる
ul liでoptionのような動作をするカスタムのリストボックスも作成可能でcssフレームワークではよくつかう手法
そういうカスタムのWebComponentを作るといいよ
selectから情報をひっぱってきて外観をul liでカスタムコンポーネントを作り、liのクリックイベントリスナーでselect要素のselectedIndexを変更すればいい
select要素はモバイル環境ではdisplayをnoneにする
166デフォルトの名無しさん (ワッチョイ 47f6-WOak [2400:2200:714:c52d:*])
2024/03/02(土) 12:47:42.36ID:Rcnd56Cm0 再利用しないのならWebComponent書くまでもなくそのままjsで書けばいい
167デフォルトの名無しさん (ワッチョイ 13f5-GI/N [240b:12:203:6300:* [上級国民]])
2024/03/02(土) 12:52:06.03ID:Ac/Ek54X0 >>164
CSSでul > liの見栄えを調整しろ
・メディアクエリの画面横幅で適応されるCSSを切り分ける
・heightをliの25行分の高さに指定
・overflow: scrollを付けてul内でスクロール出来るようにする
CSSを見栄えを整える能力は
Webで食ってく行くならこの先ずっと使うから覚えろ
CSS2の頃はまだ「技術的にも無理です!」ってケース多かったが
CSS3までフル動員させたら「それお前が無知なだけ」ってケースばかりだぞ
CSSでul > liの見栄えを調整しろ
・メディアクエリの画面横幅で適応されるCSSを切り分ける
・heightをliの25行分の高さに指定
・overflow: scrollを付けてul内でスクロール出来るようにする
CSSを見栄えを整える能力は
Webで食ってく行くならこの先ずっと使うから覚えろ
CSS2の頃はまだ「技術的にも無理です!」ってケース多かったが
CSS3までフル動員させたら「それお前が無知なだけ」ってケースばかりだぞ
168デフォルトの名無しさん (ワッチョイ 47f6-WOak [2400:2200:714:c52d:*])
2024/03/02(土) 13:00:31.15ID:Rcnd56Cm0 仕事で受けてるのならこのくらいできないとヤバいぞ
カスタムコンポーネントにすれば
customListBox.size = 25
customListBox.selectIndex = 99
みたいに設定できるようにメソッド追加すると便利
カスタムコンポーネントにすれば
customListBox.size = 25
customListBox.selectIndex = 99
みたいに設定できるようにメソッド追加すると便利
169デフォルトの名無しさん (ワッチョイ 8f43-04EL [114.166.8.189])
2024/03/02(土) 14:29:55.91ID:83dahe0E0 無理にiOSでも同じUIにする必要ないのと違う
ぐるぐる回るドラム式がiOSのSafari流でかっこいいじゃんと褒め殺せば
林檎ユーザー特有の優越感をくすぐりOKもらえる気がする
ぐるぐる回るドラム式がiOSのSafari流でかっこいいじゃんと褒め殺せば
林檎ユーザー特有の優越感をくすぐりOKもらえる気がする
170デフォルトの名無しさん (ワッチョイ ba40-aDj+ [2400:2200:770:d15b:*])
2024/03/02(土) 15:39:45.46ID:Ozqjn7Yu0171質問者 (ワッチョイ 572e-lvv7 [118.86.90.123])
2024/03/03(日) 22:00:44.67ID:719to9SO0 皆さんレスありがとうございます。今日休みで明日から参考にさせていただきます
172デフォルトの名無しさん (ワッチョイ 9724-lvv7 [2001:268:9a3d:bf34:*])
2024/03/04(月) 10:08:20.56ID:ORhetY7X0 Bootstrap, Tailwind, Bulma などに、
使えそうなコンポーネントは無いの?
使えそうなコンポーネントは無いの?
173デフォルトの名無しさん (ワッチョイ 9f02-ZLJX [27.91.124.53])
2024/03/05(火) 18:22:59.72ID:dRdKhnsT0 質問で、
chrome.tabs.query({}, function(tabs) {
で全タブを取得した各タブに関して、
そのタブのwindowType(appとかnormalなど)って取得できますか?
chrome.tabs.query({}, function(tabs) {
で全タブを取得した各タブに関して、
そのタブのwindowType(appとかnormalなど)って取得できますか?
174デフォルトの名無しさん (ブーイモ MM8f-tqxy [133.159.149.112])
2024/03/05(火) 18:47:33.98ID:qENbjC0BM175デフォルトの名無しさん (ワッチョイ 9f02-ZLJX [27.91.124.53])
2024/03/06(水) 10:35:08.32ID:c6agTDKp0176デフォルトの名無しさん (ワッチョイ 9f02-ZLJX [27.91.124.53])
2024/03/06(水) 10:42:44.31ID:c6agTDKp0177デフォルトの名無しさん (ワッチョイ 5fad-VtrB [124.141.209.120])
2024/03/29(金) 14:50:19.65ID:yy1PP2Jg0 非同期処理を同期処理から呼び出すラップ関数を作りたいのですが方法がわかりません
AIに聞いたら次のコードが返ってきましたが、当然awaitが使えないので失敗します
-------------------------------
//非asyncな呼び出し元から、asyncメソッドを呼び出し、結果が帰るまで待って返却する
function FromSyncToAsync() {
const result = await [値を返すだけの非同期な関数]();
return result
}
-------------------------------
調べても呼び出し元をasyncにする方法しかみつかりません…
AIに聞いたら次のコードが返ってきましたが、当然awaitが使えないので失敗します
-------------------------------
//非asyncな呼び出し元から、asyncメソッドを呼び出し、結果が帰るまで待って返却する
function FromSyncToAsync() {
const result = await [値を返すだけの非同期な関数]();
return result
}
-------------------------------
調べても呼び出し元をasyncにする方法しかみつかりません…
178デフォルトの名無しさん (ワッチョイ 5fad-VtrB [124.141.209.120])
2024/03/29(金) 15:40:17.46ID:yy1PP2Jg0 これはエラーはおきないけど失敗。戻り値がpendingになりました
-------------------------------
function SyncToCallAsync(){
return getWasmFileLastModified().then((result) => {
// 結果を返却
return result;
});
}
-------------------------------
-------------------------------
function SyncToCallAsync(){
return getWasmFileLastModified().then((result) => {
// 結果を返却
return result;
});
}
-------------------------------
179デフォルトの名無しさん (ワッチョイ 5f85-qPgS [240b:12:203:6300:* [上級国民]])
2024/03/29(金) 16:32:26.02ID:utPNPoKt0 >>177
残念ながら不可能
一度非同期の世界に入ると
同期処理の世界には戻って来られないぞ
・非同期処理から値を受け取る箇所はPromise値を返す関数にする
・前処理や後処理を含めて色々やってくれる関数をasync関数で定義する
・極力此処の関数やクラスメソッドは小さくして、関係ない値を持たせない事で全てをasync関数にする事を防ぐ
JavaScriptという言語がイベント駆動やイベントループ前提で作られてる以上
こういう作りを維持し続けるしかない
まぁ、ロジックを司るデカい所は基本async関数だよ
作り直す許可を上長や顧客からもぎ取るのが仕事やね
そういう交渉が出来ないなら細かくPromise.thenで作業していくしかない
残念ながら不可能
一度非同期の世界に入ると
同期処理の世界には戻って来られないぞ
・非同期処理から値を受け取る箇所はPromise値を返す関数にする
・前処理や後処理を含めて色々やってくれる関数をasync関数で定義する
・極力此処の関数やクラスメソッドは小さくして、関係ない値を持たせない事で全てをasync関数にする事を防ぐ
JavaScriptという言語がイベント駆動やイベントループ前提で作られてる以上
こういう作りを維持し続けるしかない
まぁ、ロジックを司るデカい所は基本async関数だよ
作り直す許可を上長や顧客からもぎ取るのが仕事やね
そういう交渉が出来ないなら細かくPromise.thenで作業していくしかない
180デフォルトの名無しさん (ワッチョイ 5fad-VtrB [124.141.209.120])
2024/03/29(金) 16:55:52.54ID:yy1PP2Jg0 ありがとうございます。いくつかのAIに聞いても堂々と回答実現不能なコードばかり返してくるので困っていました。できないとわかったほうが先に進めます
181デフォルトの名無しさん (ワッチョイ df68-csuD [2400:2200:454:574d:*])
2024/03/29(金) 17:39:27.22ID:D+b6Pa3z0 現時点ではAIは不可能なことを不可能と答えないケースが多い
信用しすぎないように
信用しすぎないように
182デフォルトの名無しさん (ワッチョイ 0977-nnmZ [2400:2200:587:7d4f:*])
2024/04/05(金) 21:57:54.50ID:otPTbv2G0 test
183デフォルトの名無しさん (ワッチョイ d5af-nnmZ [2400:2200:462:2f4f:*])
2024/04/05(金) 21:58:17.84ID:J45N4zHg0 test
184デフォルトの名無しさん (ワッチョイ 1bbc-AtXo [2404:7a87:26a0:9e00:*])
2024/04/13(土) 22:59:37.70ID:3VlMmSMB0 すいません、Reactの質問ってここでいいですか?
185デフォルトの名無しさん (ワッチョイ a310-0yiv [2400:2200:4d8:f2fa:*])
2024/04/13(土) 23:23:14.15ID:i7geu5sV0 まずスレ一覧をReactで検索するぐらいしてみたら?
186デフォルトの名無しさん (ワッチョイ 298b-29lp [240d:1a:7fe:ef00:*])
2024/04/20(土) 13:04:04.45ID:/vy8T+9K0 昔、私が大学でプログラミングを習ったとき(C言語でした)には円周率など特別な値については定数にしろと言われはしましたが、その他の変数については定数にしろとは言われませんでした。
Javascriptの本を今読んでいるのですが、再代入を行わない場合にはすべて「let」ではなく「const」を使えと書いてあります。
このようなことが言われるようになったのはいつ頃からでしょうか?
私がそう習わなかっただけで、昔から言われていたことでしょうか?
Javascriptの本を今読んでいるのですが、再代入を行わない場合にはすべて「let」ではなく「const」を使えと書いてあります。
このようなことが言われるようになったのはいつ頃からでしょうか?
私がそう習わなかっただけで、昔から言われていたことでしょうか?
187デフォルトの名無しさん (ワッチョイ d15e-4mIM [240b:12:203:6300:* [上級国民]])
2024/04/20(土) 14:12:14.37ID:7dIwEOD00 >>186
JavaScriptはCromeやFirefox等のブラウザ作ってる所が各自で動作するエンジン作れと丸投げしてるが
仕様書にあたるECMAScriptが長い間ES5というバージョンのまま止まってた
その頃には変数宣言はvarのみだった
流石に今時のプログラミング言語にしようぜって事でECMAScriptの強化が始まり(ES6というプロジェクト)
最終的に2015年からは毎年強化した仕様を出しましょうという話になった
その最初の成果物とも言えるES2015で変数宣言としてvarの他にletとconstの2つが追加
for (var i = 0; i < 5; i++) {
setTimeout(() => console.log(i))
}
これの出力結果が4が5個連続で表示される
違和感があるが、
letのブロックスコープによって解消されてるのでvarはもう二度と使うなという風潮が出来た
(それ以外にもvarは関数の先頭で纏めて書かないと変な動きする箇所がちらほら見受けられ、コーディング規約で制限されていた)
また値がコロコロ変わる状態変数が多いと
登場人物がやたら多い粗悪な小説みたいになって作業者が困るので
「再代入禁止の変数」を求める声が元々多かった
その要望を汲んだ再代入禁止のconstも実装されたため
必要になるまで全てconstでプログラミングして、必要な箇所だけ最小限にletを使いましょうという風潮が比較的早く出来た
JavaScriptはCromeやFirefox等のブラウザ作ってる所が各自で動作するエンジン作れと丸投げしてるが
仕様書にあたるECMAScriptが長い間ES5というバージョンのまま止まってた
その頃には変数宣言はvarのみだった
流石に今時のプログラミング言語にしようぜって事でECMAScriptの強化が始まり(ES6というプロジェクト)
最終的に2015年からは毎年強化した仕様を出しましょうという話になった
その最初の成果物とも言えるES2015で変数宣言としてvarの他にletとconstの2つが追加
for (var i = 0; i < 5; i++) {
setTimeout(() => console.log(i))
}
これの出力結果が4が5個連続で表示される
違和感があるが、
letのブロックスコープによって解消されてるのでvarはもう二度と使うなという風潮が出来た
(それ以外にもvarは関数の先頭で纏めて書かないと変な動きする箇所がちらほら見受けられ、コーディング規約で制限されていた)
また値がコロコロ変わる状態変数が多いと
登場人物がやたら多い粗悪な小説みたいになって作業者が困るので
「再代入禁止の変数」を求める声が元々多かった
その要望を汲んだ再代入禁止のconstも実装されたため
必要になるまで全てconstでプログラミングして、必要な箇所だけ最小限にletを使いましょうという風潮が比較的早く出来た
188デフォルトの名無しさん (ワッチョイ d15e-4mIM [240b:12:203:6300:* [上級国民]])
2024/04/20(土) 14:22:49.70ID:7dIwEOD00 constは直訳すれば定数だが
JSのconstは再代入しちゃいけませんよってだけで
基本は普通の変数として取り扱う
配列やオブジェクト、関数、インスタンスなんかもconstで宣言出来るね
他言語のletみたいなものと考えると良い
constで宣言したオブジェクトや配列は再代入禁止なだけで、中身は普通に加工出来てしまうのも作りとして良くない
const arr = [1, 2, 3];
arr.push(4);
console.log(arr);
// [1, 2, 3, 4]
この辺は勝手に加工しないよう運用でカバーやね
値は基本的に複製しまくってガベージコレクションで掃除してもらう
パフォーマンスチューニングで仕方なく一つの値を加工しまくる時はライブラリ化したり関数で固めたりして、メインロジックの邪魔にならないようにすること
JSのconstは再代入しちゃいけませんよってだけで
基本は普通の変数として取り扱う
配列やオブジェクト、関数、インスタンスなんかもconstで宣言出来るね
他言語のletみたいなものと考えると良い
constで宣言したオブジェクトや配列は再代入禁止なだけで、中身は普通に加工出来てしまうのも作りとして良くない
const arr = [1, 2, 3];
arr.push(4);
console.log(arr);
// [1, 2, 3, 4]
この辺は勝手に加工しないよう運用でカバーやね
値は基本的に複製しまくってガベージコレクションで掃除してもらう
パフォーマンスチューニングで仕方なく一つの値を加工しまくる時はライブラリ化したり関数で固めたりして、メインロジックの邪魔にならないようにすること
189デフォルトの名無しさん (ワッチョイ 298b-29lp [240d:1a:7fe:ef00:*])
2024/04/20(土) 14:53:24.59ID:/vy8T+9K0 >>187-188
ありがとうございました。
ありがとうございました。
190デフォルトの名無しさん (ワッチョイ 6b21-9wFU [121.2.134.225])
2024/04/20(土) 21:40:49.05ID:KOUUOZ8l0 すみません。
以前からJSフレーム・ワークについて
疑問を持っていたのですが
フレーム・ワークを使う人は、
1. JavaScriptに精通しているので
中規模程度のサイトなら
素のJavaScriptと_lodash等だけでも組めるが
効率が悪いのでフレーム・ワークを
その内部構造をも理解して使っている。
2. JavaScriptの基本的な仕組みと
DOM操作の基本は理解しているが
素のJavaScriptではサイトを作れないので
フレーム・ワークの仕様仕組みを理解して使っている。
の2種類に大別できると思うのですが
結局ブラウザは素のJavaScriptで動いているだけなので
「1」の技能習得に向かわざるを得ないと思うのですが
いかがでしょうか。
以前からJSフレーム・ワークについて
疑問を持っていたのですが
フレーム・ワークを使う人は、
1. JavaScriptに精通しているので
中規模程度のサイトなら
素のJavaScriptと_lodash等だけでも組めるが
効率が悪いのでフレーム・ワークを
その内部構造をも理解して使っている。
2. JavaScriptの基本的な仕組みと
DOM操作の基本は理解しているが
素のJavaScriptではサイトを作れないので
フレーム・ワークの仕様仕組みを理解して使っている。
の2種類に大別できると思うのですが
結局ブラウザは素のJavaScriptで動いているだけなので
「1」の技能習得に向かわざるを得ないと思うのですが
いかがでしょうか。
191デフォルトの名無しさん (ワッチョイ 6b55-Olxi [2400:2200:6b3:858d:*])
2024/04/20(土) 22:07:39.36ID:xlVv2mR90 どこから突っ込んでいいのかわからなくて答えようがない
192デフォルトの名無しさん (ワッチョイ d1f1-4mIM [240b:12:203:6300:* [上級国民]])
2024/04/20(土) 22:27:55.19ID:7dIwEOD00 >>190
lodashは関数型プログラミング的な値の加工を司るフレームワークだぞ
一部だけ利用させて頂いて関数片の集合体ライブラリとして使うことも出来るがな
フレームワークは機能を提供するライブラリであると共に
大きなプロダクトを作っていく為のファイル・関数・モジュール置き場をルールで区切ってここに設置してくださいねー
こういう司書さんみたいな役割も担ってる
複数人でプロダクトを触ったり
半年後にどれどれ?と帰ってきて読み直した時にナニコレ?にならない為に
プログラミングスキルの良し悪しに限らず
適切なフレームワークがあるなら使った方が良い
フレームワークを使わん機能を作る時でも
関数やファイルを作って保管するタイミングで「このフレームワークの考え方は好きだな、同じディレクトリ名を作ってそこに保管しよう」
自然とこういう発想が生まれる
なのでフレームワークを使い分けてる人間は引き出しが多くなっていき
可読性の良いプロダクトを作る能力も養われる
結局フレームワーク無しで適当に関数やファイルを作って放り投げるばかりで
読み辛いプロダクト作ってる奴なんて3流の雑魚だよ
lodashは関数型プログラミング的な値の加工を司るフレームワークだぞ
一部だけ利用させて頂いて関数片の集合体ライブラリとして使うことも出来るがな
フレームワークは機能を提供するライブラリであると共に
大きなプロダクトを作っていく為のファイル・関数・モジュール置き場をルールで区切ってここに設置してくださいねー
こういう司書さんみたいな役割も担ってる
複数人でプロダクトを触ったり
半年後にどれどれ?と帰ってきて読み直した時にナニコレ?にならない為に
プログラミングスキルの良し悪しに限らず
適切なフレームワークがあるなら使った方が良い
フレームワークを使わん機能を作る時でも
関数やファイルを作って保管するタイミングで「このフレームワークの考え方は好きだな、同じディレクトリ名を作ってそこに保管しよう」
自然とこういう発想が生まれる
なのでフレームワークを使い分けてる人間は引き出しが多くなっていき
可読性の良いプロダクトを作る能力も養われる
結局フレームワーク無しで適当に関数やファイルを作って放り投げるばかりで
読み辛いプロダクト作ってる奴なんて3流の雑魚だよ
193デフォルトの名無しさん (ワッチョイ d721-K5o/ [121.2.134.225])
2024/04/21(日) 00:20:10.62ID:R6fhRdj50194デフォルトの名無しさん (ワッチョイ 1735-TxeL [2001:268:9a1c:ec74:*])
2024/04/21(日) 02:22:30.51ID:9CBVBBl20 >>186
サイの表紙のサイ本。
初めてのJavaScript 第3版 ――ES2015以降の最新ウェブ開発、オライリー、2017
ECMA Script は、ES6(ES2015)で大きな改正があった。
var を非推奨にして、let/const を使う
オブジェクトの場合は、たいていconst を使う。
代入はできないが、オブジェクトの中身は更新できるから
const a = { x: 1 }
a.y = 'あ'
a //=> { x: 1, y: 'あ' }
a = 2 //=> エラー。再代入はできない!
サイの表紙のサイ本。
初めてのJavaScript 第3版 ――ES2015以降の最新ウェブ開発、オライリー、2017
ECMA Script は、ES6(ES2015)で大きな改正があった。
var を非推奨にして、let/const を使う
オブジェクトの場合は、たいていconst を使う。
代入はできないが、オブジェクトの中身は更新できるから
const a = { x: 1 }
a.y = 'あ'
a //=> { x: 1, y: 'あ' }
a = 2 //=> エラー。再代入はできない!
195デフォルトの名無しさん (ワッチョイ 0979-208W [110.2.64.150])
2024/04/28(日) 21:53:35.47ID:zlR73q8o0 スレ立てあらしスクリプト対抗age
196デフォルトの名無しさん (ワッチョイ 3fd8-HeGF [240b:11:92e0:d400:*])
2024/06/09(日) 04:17:47.61ID:7bXOQjjM0 お願いします。
let test = [{id: 1,name: '太郎'},{id: 2,name: '二郎'},{id: 3,name: '三郎'}];
console.log(test); //forEach実行前
test.forEach((value) => {
delete value.id;
})
console.log(test); //forEach実行後
これを実行してlogを見ると
0:{name: '太郎'}
1:{name: '二郎'}
2:{name: '三郎'}
forEach実行後だけでなく実行前の値もオブジェクトのidプロパティが削除されていたのですが理屈がわかりません。
試しに配列ではなくて配列の中のオブジェクトをconsole.logで調べると
let test = [{id: 1,name: '太郎'},{id: 2,name: '二郎'},{id: 3,name: '三郎'}];
console.log(test[0]);
test.forEach((value) => {
delete value.id;
})
console.log(test[0]);
forEach前のオブジェクトにはidプロパティが存在して
forEach後には削除されている期待通りの結果になるのですが
どんな理屈なのかわかりません。
初歩的な質問で申し訳ありませんが教えてください
let test = [{id: 1,name: '太郎'},{id: 2,name: '二郎'},{id: 3,name: '三郎'}];
console.log(test); //forEach実行前
test.forEach((value) => {
delete value.id;
})
console.log(test); //forEach実行後
これを実行してlogを見ると
0:{name: '太郎'}
1:{name: '二郎'}
2:{name: '三郎'}
forEach実行後だけでなく実行前の値もオブジェクトのidプロパティが削除されていたのですが理屈がわかりません。
試しに配列ではなくて配列の中のオブジェクトをconsole.logで調べると
let test = [{id: 1,name: '太郎'},{id: 2,name: '二郎'},{id: 3,name: '三郎'}];
console.log(test[0]);
test.forEach((value) => {
delete value.id;
})
console.log(test[0]);
forEach前のオブジェクトにはidプロパティが存在して
forEach後には削除されている期待通りの結果になるのですが
どんな理屈なのかわかりません。
初歩的な質問で申し訳ありませんが教えてください
197デフォルトの名無しさん (JP 0H7f-Odlx [133.106.38.39])
2024/06/09(日) 04:55:12.99ID:Wajupa1KH paiza.ioで試したが再現しなかった
JavaScriptの実行エンジンがあらかじめ使いもせずすぐdeleteするような無駄な処理を削ぎ落とすとかしてるんじゃね?知らんけど
JavaScriptの実行エンジンがあらかじめ使いもせずすぐdeleteするような無駄な処理を削ぎ落とすとかしてるんじゃね?知らんけど
198デフォルトの名無しさん (ワッチョイ 23a9-YaDi [240b:12:203:6300:* [上級国民]])
2024/06/09(日) 04:59:29.38ID:eQJZpcgM0199デフォルトの名無しさん (JP 0H7f-Odlx [133.106.38.39])
2024/06/09(日) 05:22:49.71ID:Wajupa1KH あーjsをhtmlに直書きしてFireFox/Edgeで読み込んだら再現したわ
jsじゃなくて開発者ツールのコンソール表示の仕様だと思う
配列内のオブジェクトみたいなネストされてるモノについては、その時点の値じゃなく表示を求められた時点の値が表示されるとかじやないかな
jsじゃなくて開発者ツールのコンソール表示の仕様だと思う
配列内のオブジェクトみたいなネストされてるモノについては、その時点の値じゃなく表示を求められた時点の値が表示されるとかじやないかな
200デフォルトの名無しさん (ワッチョイ 3f12-HeGF [240b:11:92e0:d400:*])
2024/06/09(日) 06:13:08.40ID:7bXOQjjM0201デフォルトの名無しさん (ワッチョイ 43e9-qUdF [222.15.234.152])
2024/06/09(日) 06:25:46.35ID:v+ppJ5f30 id を別な文字に変えると
202デフォルトの名無しさん (ワッチョイ ff0c-xov0 [240b:253:a100:e600:*])
2024/06/09(日) 08:02:18.06ID:GyoPGP3N0 全ての波【電磁波】で下記の症状が起きる
理由は電磁波が強いために起こるか電磁波が通過すれば磁気が生じて鉄分が振動して間接的に鼓膜などが振動する
マイクロ波聴覚効果を用いた音声伝送に関する検討
2018/03/05
https://www.bookpark.ne.jp/cm/ieej/detail/IEEJ-ZT181039-PDF/
マイクロ波聴覚効果 Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E6%B3%A2%E8%81%B4%E8%A6%9A%E5%8A%B9%E6%9E%9C
>>マイクロ波を照射された被験者は、クリック音やブザーのようなうなり音が聞こえる
早大、物質中の創発磁気モノポールに起こる集団振動現象を理論的に発見
2024/06/04
https://news.mynavi.jp/techplus/article/20240604-2958879/
理研、電子ビームの電子回折をアト秒で制御できる技術を開発
2024/06/06
https://news.mynavi.jp/techplus/article/20240606-2960578/
※電磁波も振動させれると記載あり
最低でも下記ノ電磁波の威力が必要なら行っている者全員補足されている
GPSの電波は超微弱
https://gigazine.net/news/20240421-gypsum-gps-receiver/
[22]米国特許5868100号
【GPS位置情報を使用した動物コントロール・システム】
一例ですが年々受信機の感度は向上している
東工大、磁束集中器を用いない高感度「ダイヤモンド量子センサ」を開発
2024/06/07
https://news.mynavi.jp/techplus/article/20240607-2961238/
電磁波音波攻撃をされている部位ごとにホルモンや異常物質などの観測
パーキンソン病の原因物質、脳内の可視化に成功
2024年6月6日 0時00分
https://www.asahi.com/articles/ASS652V7RS65ULBH00GM.html
理由は電磁波が強いために起こるか電磁波が通過すれば磁気が生じて鉄分が振動して間接的に鼓膜などが振動する
マイクロ波聴覚効果を用いた音声伝送に関する検討
2018/03/05
https://www.bookpark.ne.jp/cm/ieej/detail/IEEJ-ZT181039-PDF/
マイクロ波聴覚効果 Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%A4%E3%82%AF%E3%83%AD%E6%B3%A2%E8%81%B4%E8%A6%9A%E5%8A%B9%E6%9E%9C
>>マイクロ波を照射された被験者は、クリック音やブザーのようなうなり音が聞こえる
早大、物質中の創発磁気モノポールに起こる集団振動現象を理論的に発見
2024/06/04
https://news.mynavi.jp/techplus/article/20240604-2958879/
理研、電子ビームの電子回折をアト秒で制御できる技術を開発
2024/06/06
https://news.mynavi.jp/techplus/article/20240606-2960578/
※電磁波も振動させれると記載あり
最低でも下記ノ電磁波の威力が必要なら行っている者全員補足されている
GPSの電波は超微弱
https://gigazine.net/news/20240421-gypsum-gps-receiver/
[22]米国特許5868100号
【GPS位置情報を使用した動物コントロール・システム】
一例ですが年々受信機の感度は向上している
東工大、磁束集中器を用いない高感度「ダイヤモンド量子センサ」を開発
2024/06/07
https://news.mynavi.jp/techplus/article/20240607-2961238/
電磁波音波攻撃をされている部位ごとにホルモンや異常物質などの観測
パーキンソン病の原因物質、脳内の可視化に成功
2024年6月6日 0時00分
https://www.asahi.com/articles/ASS652V7RS65ULBH00GM.html
203デフォルトの名無しさん (ワッチョイ 2301-t5YS [60.88.88.32])
2024/06/09(日) 08:21:10.79ID:kTI4ZAed0204デフォルトの名無しさん (ワッチョイ 2361-7AaF [124.87.227.97])
2024/06/09(日) 16:12:58.02ID:Q+r4d53/0 単純なオブジェクトならconsole.log(JSON.stringify(hoge))とかするのも手だね
205デフォルトの名無しさん (ワッチョイ ff96-sNpc [2400:2200:4b1:1eb8:*])
2024/06/09(日) 17:12:03.63ID:bzc/s2Ac0 ここが詳しいね↓
Chrome の console.log でハマらないために
http://nmi.jp/2022-11-14-Be-careful-about-console-log-in-chrome
Chrome の console.log でハマらないために
http://nmi.jp/2022-11-14-Be-careful-about-console-log-in-chrome
206デフォルトの名無しさん (ワッチョイ 639f-VQfa [2001:268:9a20:1e45:*])
2024/06/09(日) 18:59:00.31ID:47AcMhsH0 >let test
オブジェクトtest に再代入していないから、const test を使う。
内部を変更しているだけだから(破壊的変更)
配列オブジェクトtest の、内部のオブジェクトを変更している。
value は参照渡し。
内部のオブジェクトをコピー・再構築して、引数に渡すのではない!
C/C++ 以外の言語は参照渡し。
コピー・再構築せずに、現存するオブジェクトをそのまま引数に渡す
const test = [{id: 1,name: '太郎'}];
console.log(test);
//=> forEach 実行前は、[ { id: 1, name: '太郎' } ]
test.forEach((value) => {
delete value.id;
})
console.log(test);
//=> forEach 実行後は、[ { name: '太郎' } ]
オブジェクトtest に再代入していないから、const test を使う。
内部を変更しているだけだから(破壊的変更)
配列オブジェクトtest の、内部のオブジェクトを変更している。
value は参照渡し。
内部のオブジェクトをコピー・再構築して、引数に渡すのではない!
C/C++ 以外の言語は参照渡し。
コピー・再構築せずに、現存するオブジェクトをそのまま引数に渡す
const test = [{id: 1,name: '太郎'}];
console.log(test);
//=> forEach 実行前は、[ { id: 1, name: '太郎' } ]
test.forEach((value) => {
delete value.id;
})
console.log(test);
//=> forEach 実行後は、[ { name: '太郎' } ]
207デフォルトの名無しさん (ワッチョイ cf10-N2Ms [153.252.74.3])
2024/06/13(木) 23:54:51.41ID:UwmoZOtM0 console.log厄介だな…プリントデバッグ卒業しないと駄目か
208デフォルトの名無しさん (ワッチョイ 8f13-Sdaz [2400:2200:1d9:de7d:*])
2024/06/14(金) 00:22:57.99ID:QtqbLyKp0 卒業しなくていい
209デフォルトの名無しさん (ワッチョイ 8299-bV2f [2400:2200:4fb:564e:*])
2024/07/02(火) 17:17:44.53ID:kFuGoUXg0 ループの中でwindow.openして、ポートだけが違う同じドメインの同じ画面を複数開くとchromeのタスクマネージャーでは全部同じプロセスIDでcpuコア分散してくれないのだけれどそういうものでしょうか?
最初は同じオリジンでやってたんだけどふか高くて、ポート変えて別オリジンならプロセスも変わってコア使い回してくれるかなと思ったのだけれどそうはならず、回避方法模索中です
最初は同じオリジンでやってたんだけどふか高くて、ポート変えて別オリジンならプロセスも変わってコア使い回してくれるかなと思ったのだけれどそうはならず、回避方法模索中です
210デフォルトの名無しさん (ワッチョイ 1231-PoPW [2400:2200:4d2:c4bd:*])
2024/07/02(火) 20:47:10.76ID:nZysD7UJ0 詳しくは分からないけどJavaScriptのコードで関与できる部分じゃないような
まずchromeのスレあたりで挙動について質問してみたら?
まずchromeのスレあたりで挙動について質問してみたら?
211デフォルトの名無しさん (ワッチョイ 8299-bV2f [2400:2200:4fb:564e:*])
2024/07/02(火) 21:33:51.40ID:kFuGoUXg0 >>210
ありがとうございます
イロイロ試したけど挙動的にwindow.openで同じドメインのページ開くと同じプロセスに囲われてしまうっぽいです
で、hostsに同じipを別ホスト名に定義してそのホスト名で呼んだら別プロセスになってくれた
気持ち悪いけど一旦これで逃げられるか検証したいと思います
ありがとうございます
イロイロ試したけど挙動的にwindow.openで同じドメインのページ開くと同じプロセスに囲われてしまうっぽいです
で、hostsに同じipを別ホスト名に定義してそのホスト名で呼んだら別プロセスになってくれた
気持ち悪いけど一旦これで逃げられるか検証したいと思います
212デフォルトの名無しさん (ワッチョイ 0df5-hfHU [2404:7a82:3de0:3500:*])
2024/07/03(水) 18:29:30.68ID:YlCf6WAf0 >>211
子ウィンドウから opener で親を参照できる間柄だと CPU を分けるわけにはいかないんじゃない?
子ウィンドウから opener で親を参照できる間柄だと CPU を分けるわけにはいかないんじゃない?
213デフォルトの名無しさん (ワッチョイ 0df5-hfHU [2404:7a82:3de0:3500:*])
2024/07/03(水) 18:30:11.37ID:YlCf6WAf0 >>212
CPU じゃない、プロセスか
CPU じゃない、プロセスか
214デフォルトの名無しさん (ワッチョイ 9e7e-bV2f [2400:2200:7b2:8057:*])
2024/07/03(水) 20:03:48.10ID:QL5YeWa80 >>213
大元画面
→A機能群メイン画面
→B機能群メイン画面
→C機能群メイン画面
みたいな構成で大元からワンクリックでA,B,C画面がバババっと別Windowで表示のイメージで
大元とA,B,Cは親子関係いらないしA,B,C間も参照不要だから別プロセスで上げてコア分散して欲しいんだけどA,B,Cが同一プロセスになっちゃうって感じなのです
大元画面
→A機能群メイン画面
→B機能群メイン画面
→C機能群メイン画面
みたいな構成で大元からワンクリックでA,B,C画面がバババっと別Windowで表示のイメージで
大元とA,B,Cは親子関係いらないしA,B,C間も参照不要だから別プロセスで上げてコア分散して欲しいんだけどA,B,Cが同一プロセスになっちゃうって感じなのです
215デフォルトの名無しさん (ワッチョイ 0df5-hfHU [2404:7a82:3de0:3500:*])
2024/07/04(木) 04:55:13.57ID:O++Z8oMX0 >>214
それらが同じドメインにあってセキュリティ上も子画面から親画面を opener で参照できちゃう間柄だから、スクリプトエンジンも同じインスタンスじゃないといけなくて同じプロセスになるってことなんじゃないかな。
間に別ドメインを挟んでリダイレクトでもするとプロセスが分かれるかもね。
それらが同じドメインにあってセキュリティ上も子画面から親画面を opener で参照できちゃう間柄だから、スクリプトエンジンも同じインスタンスじゃないといけなくて同じプロセスになるってことなんじゃないかな。
間に別ドメインを挟んでリダイレクトでもするとプロセスが分かれるかもね。
216デフォルトの名無しさん (ワッチョイ f518-w2mC [2400:2200:6b6:7ae7:*])
2024/07/04(木) 08:37:45.29ID:7WHO1Maz0 Chromeのプロセスマネジメントの仕組みについて説明すると、Chromeは各タブや拡張機能を個別のプロセスで管理することで、ブラウザの安定性とセキュリティを向上させています。しかし、同じオリジン(スキーム、ホスト、ポートが同じ)からのリクエストに対しては、プロセスを共有することが一般的です。ポート番号が異なる場合でも、同じドメインからのリクエストは同じプロセスで処理されることが多いです。
CPUコアの分散については、Chromeのプロセスマネジメントに依存するため、開いているタブや実行中のスクリプトの数が多くても、同じプロセスで実行される場合があります。そのため、CPUコアが均等に分散されないことがあるのです。
CPUコアの分散については、Chromeのプロセスマネジメントに依存するため、開いているタブや実行中のスクリプトの数が多くても、同じプロセスで実行される場合があります。そのため、CPUコアが均等に分散されないことがあるのです。
217デフォルトの名無しさん (ワッチョイ 5e63-klGW [153.174.220.41])
2024/07/05(金) 09:45:00.80ID:Js1ZcPln0 acrobatで選択した単語をJavascriptに渡せないのは仕様?
api使いたいのにその前段階で躓いている
api使いたいのにその前段階で躓いている
218デフォルトの名無しさん (ワッチョイ 5e63-klGW [153.174.220.41])
2024/07/05(金) 10:34:02.07ID:Js1ZcPln0 自己解決した。
渡せないんだねえ。
ハイライト経由で渡すんだね。
面倒くさくな。
渡せないんだねえ。
ハイライト経由で渡すんだね。
面倒くさくな。
219デフォルトの名無しさん (ワッチョイ 692d-RZYL [240b:12:203:6300:* [上級国民]])
2024/07/05(金) 10:37:09.77ID:Beou0vig0 ブラウザの制約を厳しくしないと
すぐクレカ番号やログイン情報を抜かれるからな
特殊な事をしたければデスクトップアプリやCLIをベースにした方が無難
すぐクレカ番号やログイン情報を抜かれるからな
特殊な事をしたければデスクトップアプリやCLIをベースにした方が無難
220デフォルトの名無しさん (ワッチョイ 5e63-klGW [153.174.220.41])
2024/07/05(金) 11:02:03.90ID:Js1ZcPln0 デスクトップアプリのAcrobat DCで英文自動翻訳注釈作成機を作ろうとしてるんですけどねえ
221デフォルトの名無しさん (ワッチョイ 9279-oiVf [27.132.131.251])
2024/07/06(土) 16:41:04.11ID:ixa6zhE30 acrobatというかPDFに英文箇所を翻訳したいってことだよね
acrobatでやるならプラグインでも入れないと無理なんじゃないかな
やる事の割に大変な手間だから有償だったりするね
acrobatでやるならプラグインでも入れないと無理なんじゃないかな
やる事の割に大変な手間だから有償だったりするね
222デフォルトの名無しさん (ワッチョイ 5e63-klGW [153.174.220.41])
2024/07/06(土) 19:00:07.61ID:SVaQBkcr0223デフォルトの名無しさん (ワッチョイ c24b-Wzaw [203.139.76.105 [上級国民]])
2024/07/27(土) 23:26:18.23ID:6J8KNmw/0 iOSのブラウザだと指をつまむようにピンチ操作するとタブ一覧になりますがこれを防ぐ方法ってないんでしょうか
touchstart, touchmove, touchendのそれぞれでpreventDefaultしても無理でした
touchstart, touchmove, touchendのそれぞれでpreventDefaultしても無理でした
224デフォルトの名無しさん (ワッチョイ ef7d-urqj [111.89.246.142])
2024/08/11(日) 18:28:32.58ID:tgahoj8r0 東京都の低所得者向け支援事業のページですが、
https://kurashiouen.metro.tokyo.lg.jp/login
ここのフォームに毎回手動で入れるのが面倒なんで
TamperMonkeyで入れようとしたんですが、
うまく値が入らないです。
(メアド登録すれば向こうから知らせてくるのだけどメアドを広範囲に振りまくのはなるべく避けたい)
inputタグのvalueプロパティに
値を入れてその値が画面に出ていても
そのinputにフォーカスすると消えてしまいますし、
ページのjavascriptからは正常な値が入っていると認識されていないようです。
(生年月日のselectタグも同じ)
https://kurashiouen.metro.tokyo.lg.jp/login
ここのフォームに毎回手動で入れるのが面倒なんで
TamperMonkeyで入れようとしたんですが、
うまく値が入らないです。
(メアド登録すれば向こうから知らせてくるのだけどメアドを広範囲に振りまくのはなるべく避けたい)
inputタグのvalueプロパティに
値を入れてその値が画面に出ていても
そのinputにフォーカスすると消えてしまいますし、
ページのjavascriptからは正常な値が入っていると認識されていないようです。
(生年月日のselectタグも同じ)
225デフォルトの名無しさん (ワッチョイ ef7d-urqj [111.89.246.142])
2024/08/11(日) 18:28:49.67ID:tgahoj8r0 最初の世帯識別番号を全部フィルしてから(全部4ケタ)
一番下の規約同意チェックボックスをクリックしないと
ログインボタンが有効にならないという動作のようです。
(チェックボックスを.checked=trueにするだけではダメ)
うまく自動で値を入力するにはどうすればいいでしょうか?
セレニウムやAutoHotKeyを使えばできるような気もしますが
できればTamperMonkeyでやりたい
一番下の規約同意チェックボックスをクリックしないと
ログインボタンが有効にならないという動作のようです。
(チェックボックスを.checked=trueにするだけではダメ)
うまく自動で値を入力するにはどうすればいいでしょうか?
セレニウムやAutoHotKeyを使えばできるような気もしますが
できればTamperMonkeyでやりたい
226デフォルトの名無しさん (ワッチョイ cb61-6HV9 [60.45.92.38])
2024/08/11(日) 21:08:30.34ID:lbk/Z2Eg0 >>224
それぞれイベント発火時に値を読み取るようなので
inputに対しては.valueに値設定したら.dispatchEvent(new Event("input"))
selectは.dispatchEvent(new Event("change"))
チェックボックスは.click()
それぞれイベント発火時に値を読み取るようなので
inputに対しては.valueに値設定したら.dispatchEvent(new Event("input"))
selectは.dispatchEvent(new Event("change"))
チェックボックスは.click()
227デフォルトの名無しさん (ワッチョイ ef7d-urqj [111.89.246.142])
2024/08/12(月) 18:41:31.15ID:dTbtx1jA0228デフォルトの名無しさん (ワッチョイ 2501-FzYF [126.51.187.51])
2024/08/23(金) 05:01:35.54ID:GNzk6D2z0 ここ1年くらいで本格的に学び始めたものです
数カ月前にmicromatchていう正規表現ライブラリに脆弱性が指摘されてCVEに登録されたみたいんなんですが
これ使ってるライブラリは芋づる式で全部npmでSeverity:moderateの警告が出てるはずで
その中にtypescript-eslintも入ってるので、これ使ってるフレームワークのテンプレート、
ほとんど影響受けてると思うんですが、各ライブラリのissueとか探しても全然話題になっていないみたいです。
皆、moderateくらいのセキュリティ警告はほとんど気にしないんですか?
それとも開発環境Onlyの依存関係だから?
数カ月前にmicromatchていう正規表現ライブラリに脆弱性が指摘されてCVEに登録されたみたいんなんですが
これ使ってるライブラリは芋づる式で全部npmでSeverity:moderateの警告が出てるはずで
その中にtypescript-eslintも入ってるので、これ使ってるフレームワークのテンプレート、
ほとんど影響受けてると思うんですが、各ライブラリのissueとか探しても全然話題になっていないみたいです。
皆、moderateくらいのセキュリティ警告はほとんど気にしないんですか?
それとも開発環境Onlyの依存関係だから?
229デフォルトの名無しさん (ワッチョイ db59-3ukT [2400:4176:2846:5b00:*])
2024/08/23(金) 16:45:00.54ID:bCxVN52K0 >>228
botがプルリク送ってきたとて放置
botがプルリク送ってきたとて放置
230デフォルトの名無しさん (ワッチョイ 3542-l7gQ [2001:268:c203:2913:*])
2024/08/27(火) 21:06:37.83ID:lR/Nrb/N0 バニラJSって流行ってんですか?
231デフォルトの名無しさん (ワッチョイ 6bcf-Xwm8 [153.165.155.26])
2024/08/28(水) 07:37:45.61ID:RARaVMf40232デフォルトの名無しさん (ワッチョイ 25a5-sJ2H [2400:4051:e720:2600:*])
2024/08/30(金) 21:40:56.02ID:iQc2EzH00 拡張機能でページの読み込み完了時に動作するスクリプトを書いたが、
完了前に発動してしまい、
ラッセーラー、ラッセーラー
完了前に発動してしまい、
ラッセーラー、ラッセーラー
2331000て事にしよっと 999よりデカい (ワッチョイ 8dc0-gcOT [2400:2200:671:c292:*])
2024/09/03(火) 06:53:50.48ID:3ofcqTVt0 《言語 javascript》
for(let i = 0;i < 10; i++){
if (i === 99999){
break; // とにかく脱出
}
}
console.log("i="+i)
は、ダメである
varは非推奨らしいけど、この意味は
T》varは、使用しないことは、推奨
U》varは、使用は、推奨は、しない
等 イロイロな解釈の余地はあるな
by 🤡自称プロマネ
letは地球人が推奨するヤバイやつ∴
letは、宇宙人的には、使用は、🈲ずる
by 👤自称ウチュ〰人 本日もモチ暴言
質問ぢゃない質問。ウチュ〰人素晴らしい
by 🥳ウチュ〰人に忖度するバカッテスタ
for(let i = 0;i < 10; i++){
if (i === 99999){
break; // とにかく脱出
}
}
console.log("i="+i)
は、ダメである
varは非推奨らしいけど、この意味は
T》varは、使用しないことは、推奨
U》varは、使用は、推奨は、しない
等 イロイロな解釈の余地はあるな
by 🤡自称プロマネ
letは地球人が推奨するヤバイやつ∴
letは、宇宙人的には、使用は、🈲ずる
by 👤自称ウチュ〰人 本日もモチ暴言
質問ぢゃない質問。ウチュ〰人素晴らしい
by 🥳ウチュ〰人に忖度するバカッテスタ
234デフォルトの名無しさん (ワッチョイ c18d-v++5 [240d:f:2a0:600:*])
2024/09/09(月) 00:14:27.71ID:0tBQa8Zr0 node.jsで「http://www.amecs.co.jp/solar/index.html?hlat=36.00&hlon=140.25」の
textareaの「0,0,0,0...」という文字列を取得したいです。
以下のようなコードで実行すると結果は
Textarea value:
となり、うまく取得できません。
もし原因がわかれば教えてください。
<コード>
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('http://www.amecs.co.jp/solar/index.html?hlat=36.00&hlon=140.25');
// ページが完全に読み込まれるのを待ちます
await page.waitForSelector('#sdata');
// textareaの値を取得します
const textareaValue = await page.$eval('#sdata', el => el.value);
console.log('Textarea value:', textareaValue);
await browser.close();
})();
textareaの「0,0,0,0...」という文字列を取得したいです。
以下のようなコードで実行すると結果は
Textarea value:
となり、うまく取得できません。
もし原因がわかれば教えてください。
<コード>
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('http://www.amecs.co.jp/solar/index.html?hlat=36.00&hlon=140.25');
// ページが完全に読み込まれるのを待ちます
await page.waitForSelector('#sdata');
// textareaの値を取得します
const textareaValue = await page.$eval('#sdata', el => el.value);
console.log('Textarea value:', textareaValue);
await browser.close();
})();
235デフォルトの名無しさん (ワッチョイ 1361-IU9Y [61.119.230.146])
2024/09/09(月) 01:15:24.84ID:/+PLPYVG0236デフォルトの名無しさん (ワッチョイ c1ed-BHET [240d:f:2a0:600:*])
2024/09/09(月) 07:40:59.09ID:0tBQa8Zr0237デフォルトの名無しさん (ワッチョイ 1361-IU9Y [61.119.230.146])
2024/09/10(火) 01:02:40.92ID:pJ+fs1Xn0 >>236
ブラウザF12の開発ツールの要素タブでCtrl+Fして#sdataで検索
ブラウザF12の開発ツールの要素タブでCtrl+Fして#sdataで検索
238デフォルトの名無しさん (ワッチョイ c1b3-BHET [240d:f:2a0:600:*])
2024/09/11(水) 23:50:48.17ID:HwHYDYw50239デフォルトの名無しさん (ラクッペペ MM4e-co9J [133.106.89.97])
2024/09/26(木) 10:16:59.99ID:Wk3ylYwqM document.getElementById("test_id");
を使わずに
test_id.value
と、直接使うと何か問題がありますか?
を使わずに
test_id.value
と、直接使うと何か問題がありますか?
240今の所はポクのは問題は未だ無い (ワッチョイ 3ffb-dFxZ [2400:2200:5d5:5428:*])
2024/09/26(木) 21:22:05.89ID:hoEdOj9E0 📕はCanvasタグID 、📘はAタグID
─ ─ ─ ─ ─ ─ ─
🔴 = document.getElementById("📕");
🔵= document.getElementById("📘");
var 🟢 = 🔴.toDataURL("image/png");
🔵.href = 🟢;
BY 🤡 んー素晴らしい
─ ─ ─ ─ ─ ─ ─
オレッちのパソコン環境だと
pure な javascript のハズだけど
document.getElementById は不要
var 🟢 = 📕.toDataURL("image/png");
📘.href = 🟢;
BY 👤 ヤバぃのかな。こんな実装
─ ─ ─ ─ ─ ─ ─
タグID がjavascriptのグローバル変数❓
そんなのは、教科書は、見たことは、
ナイナイナイ 在る。
てか、そぅなら、以下一行で済むぢゃん
📘.href = 📕.toDataURL("image/png");
BY 🥳
─ ─ ─ ─ ─ ─ ─
地球の
javascriptは超進化したのだろうか?!
BY 👤
─ ─ ─ ─ ─ ─ ─
🔴 = document.getElementById("📕");
🔵= document.getElementById("📘");
var 🟢 = 🔴.toDataURL("image/png");
🔵.href = 🟢;
BY 🤡 んー素晴らしい
─ ─ ─ ─ ─ ─ ─
オレッちのパソコン環境だと
pure な javascript のハズだけど
document.getElementById は不要
var 🟢 = 📕.toDataURL("image/png");
📘.href = 🟢;
BY 👤 ヤバぃのかな。こんな実装
─ ─ ─ ─ ─ ─ ─
タグID がjavascriptのグローバル変数❓
そんなのは、教科書は、見たことは、
ナイナイナイ 在る。
てか、そぅなら、以下一行で済むぢゃん
📘.href = 📕.toDataURL("image/png");
BY 🥳
─ ─ ─ ─ ─ ─ ─
地球の
javascriptは超進化したのだろうか?!
BY 👤
241デフォルトの名無しさん (ワッチョイ b310-Qw5I [180.12.82.129])
2024/10/03(木) 08:27:00.36ID:EHJ+UvFT0 const str = "[aaa,bbb,ccc],[ddd,eee,fff],[ggg,hhh,iii]";
という文字列を[]で囲まれた部分を取り出して配列にしたいんだけど
どうやればいいですか?
aaa,bbb,cccとddd,eee,fffとggg,hhh,iiiの3つの要素を持つ配列ってことです
という文字列を[]で囲まれた部分を取り出して配列にしたいんだけど
どうやればいいですか?
aaa,bbb,cccとddd,eee,fffとggg,hhh,iiiの3つの要素を持つ配列ってことです
242デフォルトの名無しさん (ラクッペペ MMff-xL0Q [133.106.77.209])
2024/10/03(木) 08:38:25.14ID:G42V7GDMM 外側を[]で囲んでeval
243デフォルトの名無しさん (ワッチョイ 3f00-v4Ln [221.118.182.146])
2024/10/03(木) 08:40:52.73ID:WRRjekij0 aaaとかbbbとかの形式によってはJSON.parseで良くないか
244デフォルトの名無しさん (アウアウエー Sa72-xere [111.239.153.138])
2024/10/08(火) 10:57:59.20ID:BetB/9MOa const str = "[aaa,bbb,ccc],[ddd,eee,fff],[ggg,hhh,iii]";
str.split(",");
str.split(",");
245デフォルトの名無しさん (アウアウエー Sa72-xere [111.239.153.138])
2024/10/08(火) 11:13:58.37ID:BetB/9MOa // こうか?
const str = "[aaa,bbb,ccc],[ddd,eee,fff],[ggg,hhh,iii]";
str.replace("[","").replaceAll("],","").replace("]","").split("[");
const str = "[aaa,bbb,ccc],[ddd,eee,fff],[ggg,hhh,iii]";
str.replace("[","").replaceAll("],","").replace("]","").split("[");
246デフォルトの名無しさん (アウアウエー Sa72-xere [111.239.153.138])
2024/10/08(火) 11:28:09.41ID:BetB/9MOa // こっちか
const strArray = "[aaa,bbb,ccc],[ddd,eee,fff],[ggg,hhh,iii]";
// 角括弧で囲まれた要素を二重引用符で囲んでJSON形式に変換
const jsonFormattedStr = strArray.replace(/(\w+)/g, '"$1"');
// JSON.parse()を使って配列に変換
JSON.parse(`[${jsonFormattedStr}]`);
// [ ["aaa", "bbb", "ccc"], ["ddd", "eee", "fff"], ["ggg", "hhh", "iii"]]
const strArray = "[aaa,bbb,ccc],[ddd,eee,fff],[ggg,hhh,iii]";
// 角括弧で囲まれた要素を二重引用符で囲んでJSON形式に変換
const jsonFormattedStr = strArray.replace(/(\w+)/g, '"$1"');
// JSON.parse()を使って配列に変換
JSON.parse(`[${jsonFormattedStr}]`);
// [ ["aaa", "bbb", "ccc"], ["ddd", "eee", "fff"], ["ggg", "hhh", "iii"]]
247デフォルトの名無しさん (ワッチョイ ba45-1ld3 [59.147.98.100])
2024/10/11(金) 07:13:33.54ID:tTImpqsq0 久々にプログラミングしてるのですが、今のjavascriptって即時関数の中にコードを書くのが普通なんですか?
昔javascript触ってた時はそういうのなかったので
昔javascript触ってた時はそういうのなかったので
248デフォルトの名無しさん (ワッチョイ fa00-F8I7 [221.118.182.146])
2024/10/11(金) 07:51:03.87ID:o/ilE/ed0 JSは15年くらい前から無名関数使い倒す文化だと思うけど
249デフォルトの名無しさん (ワッチョイ 0b4c-V3+A [2001:240:2472:c002:*])
2024/10/11(金) 09:47:24.63ID:uRIO12V20 2005年頃には即時関数を使い倒す文化が確立されてたぞ
むしろ2015以降は代替手段ができたからQuick and Dirtyなコードじゃなければ即時関数の利用シーンはかなり減ってる
むしろ2015以降は代替手段ができたからQuick and Dirtyなコードじゃなければ即時関数の利用シーンはかなり減ってる
250デフォルトの名無しさん (ワッチョイ 9302-i3Tp [124.210.129.68])
2024/10/11(金) 09:52:14.18ID:SCGEnJgQ0 letとconstができたから即時間数なんてもういらない
251デフォルトの名無しさん (ベーイモ MM66-shoS [27.253.251.174])
2024/10/11(金) 11:05:14.15ID:cc/oW7+2M 個人的には 1) その場限りのコールバック、2) 一連の手続きの中で中間変数(説明変数含む)が多くなるケース、で即時関数をよく使う
後者は「結果の局所化」及び「意図と実装の分離」の効果をサクッと得られる
後者は「結果の局所化」及び「意図と実装の分離」の効果をサクッと得られる
252デフォルトの名無しさん (ワッチョイ 0b4c-V3+A [2001:240:2472:c002:*])
2024/10/11(金) 11:29:01.18ID:uRIO12V20 即時関数は即時実行関数式(IIFE)の略で無名関数とは違うと思うんだけど>>251は無名関数について書いてない?
253デフォルトの名無しさん (ワッチョイ fa00-F8I7 [221.118.182.146])
2024/10/11(金) 11:48:22.92ID:o/ilE/ed0 すまん。俺が無名関数とか言い出したから良くなかったんだろうと思う
254デフォルトの名無しさん (ワッチョイ b70e-3m9W [2400:2200:6f3:9a36:*])
2024/10/15(火) 06:39:54.87ID:/S0KwaUI0 そもそも、基本的に関数なんていらん。
ほぼ全部、変数は、グローバル変数で宣言し
とにかく、サブルーチンは
イベンリスナー系を除いて不要だよな
てゆぅかさ、goto文がないようだし、
goto文のラベルの代わりに
無名じゃない関数
(モビロン引数はなし∵全部グローバル変数)
これが、無限年後のJavaスクリプトの常識だぜ
てか、無名関数廃止して、gotoとラベルを
無限以内に復活しようよ
これで、ド初心者の人気No.ワン言語、確実
ほぼ全部、変数は、グローバル変数で宣言し
とにかく、サブルーチンは
イベンリスナー系を除いて不要だよな
てゆぅかさ、goto文がないようだし、
goto文のラベルの代わりに
無名じゃない関数
(モビロン引数はなし∵全部グローバル変数)
これが、無限年後のJavaスクリプトの常識だぜ
てか、無名関数廃止して、gotoとラベルを
無限以内に復活しようよ
これで、ド初心者の人気No.ワン言語、確実
255デフォルトの名無しさん (ワッチョイ bfa1-LGdj [2001:268:9a20:b79:*])
2024/10/15(火) 09:34:04.49ID:vvxZNDvq0 >>241
Ruby のJSON.parse なら、
require 'json'
# 改行を削除する。削除しなくても同じ結果
json_str = <<'JSON'.delete( "\n" )
[ {"あ":[{"い":1}, "x"]},
[] ]
JSON
p json_obj = JSON.parse( json_str )
#=> [{"あ"=>[{"い"=>1}, "x"]}, []]
Ruby のJSON.parse なら、
require 'json'
# 改行を削除する。削除しなくても同じ結果
json_str = <<'JSON'.delete( "\n" )
[ {"あ":[{"い":1}, "x"]},
[] ]
JSON
p json_obj = JSON.parse( json_str )
#=> [{"あ"=>[{"い"=>1}, "x"]}, []]
256デフォルトの名無しさん (ワッチョイ bf7d-ZVNI [111.89.246.142])
2024/10/19(土) 15:37:37.54ID:67I5xGKq0 スクリプトの問題とは微妙に話が違いますが、
tampermonkeyじゃなくてgreasemonkey使っている人いますか?
firefoxで使ってるんですが、
greasemonkeyだと自作スクリプトって簡単にはインストールできないですよね?
zipに固めないとインストールできないと思うのですが、
みなさんはどうやってるんでしょうか?
tampermonkeyじゃなくてgreasemonkey使っている人いますか?
firefoxで使ってるんですが、
greasemonkeyだと自作スクリプトって簡単にはインストールできないですよね?
zipに固めないとインストールできないと思うのですが、
みなさんはどうやってるんでしょうか?
257デフォルトの名無しさん (ワッチョイ 977c-d0HJ [122.209.8.233])
2024/11/19(火) 23:39:35.70ID:Jroeim880 JavaScriptのwindow.openで第2引数にウィンド名を指定して画面を開きます 続いて全く同じ引数で同じ画面をwindow.openで開いてるのに別ウィンドウで開いてしまいます
broadcastchannelを使っている画面でこのような事象が見られるように思えるのですが、broadcastchannelを使っている画面はwindow.openで第2引数を指定しても別ウィンドウで開いてしまうのでしょうか
因みに関連ウィンドウは全て同オリジンでウィンドウ名は半角空白も含まれない半角英文字のみです
broadcastchannelを使っている画面でこのような事象が見られるように思えるのですが、broadcastchannelを使っている画面はwindow.openで第2引数を指定しても別ウィンドウで開いてしまうのでしょうか
因みに関連ウィンドウは全て同オリジンでウィンドウ名は半角空白も含まれない半角英文字のみです
258デフォルトの名無しさん (ワッチョイ 0ed1-iDGe [240a:61:11c0:64d6:*])
2024/11/20(水) 09:20:12.24ID:GmME3X9l0 開いたウインドウにナビゲートするのではなく?
レスを投稿する
ニュース
- 中国国営メディア「沖縄は日本ではない」… ★5 [BFU★]
- 高市政権にパイプ役不在…日中高まる緊張 公明党の連立離脱影響、自民内にも懸念「自分でまいた種は自分で刈り取ってもらわないと」★2 [ぐれ★]
- 【速報】 日経平均の下落率3%超す、財政懸念で長期金利上昇 [お断り★]
- 【速報】 高市政権、「日本版DOGE」を立ち上げ 米国で歳出削減をした「政府効率化省(DOGE)」になぞらえたもの [お断り★]
- 【こんなの初めて…】民泊には既にキャンセルも 中国の渡航自粛で ★2 [ぐれ★]
- 台湾声明 「台湾は独立した主権国家、中国は台湾を統治したことがなく、中国は口出しする権利ない」 中国が高市首相に抗議で ★7 [お断り★]
- 高市「金正恩総書記と会談したい」 国交ある国ですらまともに外交出来ないのに北朝鮮相手に何が出来るのこいつ [878970802]
- 日経平均、49000円割れ 国賊高市を許すな [402859164]
- 中国「高市が謝罪撤回しないとこれ全部なくなるけどどうする?」 [931948549]
- 【正論】有識者「高市早苗に合理的配慮をしなかった野党が悪い」 [175344491]
- 日経平均、49000円割れ 国賊高市を許すな ★2 [402859164]
- 吉村はん「高市さんは発言を撤回する必要ないですよ。中国の大阪総領事が謝罪すべき」 [256556981]
