JavaScript の質問用スレッド vol.126 (308レス)
1-

1
(2): (オッペケ Sr9f-tek/ [126.254.232.20]) 2023/12/09(土)17:40 ID:Mnb70srnr(1/5) AAS
!extend:checked:vvvvvv:1000:512
JavaScript を自ら学ぶ人のための質問スレッドです。
>>2-5のテンプレを読んだ上で質問してください。次スレは>>950>>2の「次スレの立て方」を元に立ててください

■質問を書く上で
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
  (ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
省15
228
(2): (ワッチョイ 2501-FzYF [126.51.187.51]) 2024/08/23(金)05:01 ID:GNzk6D2z0(1) AAS
ここ1年くらいで本格的に学び始めたものです
数カ月前にmicromatchていう正規表現ライブラリに脆弱性が指摘されてCVEに登録されたみたいんなんですが
これ使ってるライブラリは芋づる式で全部npmでSeverity:moderateの警告が出てるはずで
その中にtypescript-eslintも入ってるので、これ使ってるフレームワークのテンプレート、
ほとんど影響受けてると思うんですが、各ライブラリのissueとか探しても全然話題になっていないみたいです。
皆、moderateくらいのセキュリティ警告はほとんど気にしないんですか?
それとも開発環境Onlyの依存関係だから?
229: (ワッチョイ db59-3ukT [2400:4176:2846:5b00:*]) 2024/08/23(金)16:45 ID:bCxVN52K0(1) AAS
>>228
botがプルリク送ってきたとて放置
230: (ワッチョイ 3542-l7gQ [2001:268:c203:2913:*]) 2024/08/27(火)21:06 ID:lR/Nrb/N0(1) AAS
バニラJSって流行ってんですか?
231: (ワッチョイ 6bcf-Xwm8 [153.165.155.26]) 2024/08/28(水)07:37 ID:RARaVMf40(1) AAS
>>228
devDependency なら伝播はしないだろ。
npm audit で確認してみりゃいい。
232: (ワッチョイ 25a5-sJ2H [2400:4051:e720:2600:*]) 2024/08/30(金)21:40 ID:iQc2EzH00(1) AAS
拡張機能でページの読み込み完了時に動作するスクリプトを書いたが、
完了前に発動してしまい、
ラッセーラー、ラッセーラー
233: 1000て事にしよっと 999よりデカい (ワッチョイ 8dc0-gcOT [2400:2200:671:c292:*]) 2024/09/03(火)06:53 ID:3ofcqTVt0(1) AAS
《言語 javascript》
for(let i = 0;i < 10; i++){
 if (i === 99999){
  break; // とにかく脱出
 }
}
console.log("i="+i)
省11
234
(1): (ワッチョイ c18d-v++5 [240d:f:2a0:600:*]) 2024/09/09(月)00:14 ID:0tBQa8Zr0(1/2) AAS
node.jsで「外部リンク[html]:www.amecs.co.jp」の
textareaの「0,0,0,0...」という文字列を取得したいです。

以下のようなコードで実行すると結果は
 Textarea value:
となり、うまく取得できません。
もし原因がわかれば教えてください。

<コード>
省12
235
(2): (ワッチョイ 1361-IU9Y [61.119.230.146]) 2024/09/09(月)01:15 ID:/+PLPYVG0(1) AAS
>>234
非表示になってる#sdataがもう一つ存在してそっちを拾ってるせい
セレクタを'#overLayer > #sdata'等詳細にする
236
(1): (ワッチョイ c1ed-BHET [240d:f:2a0:600:*]) 2024/09/09(月)07:40 ID:0tBQa8Zr0(2/2) AAS
>>235
ありがとう!解決しました

ちなみに何を見ると非表示の#sdataがあることを確認できますか?
237: (ワッチョイ 1361-IU9Y [61.119.230.146]) 2024/09/10(火)01:02 ID:pJ+fs1Xn0(1) AAS
>>236
ブラウザF12の開発ツールの要素タブでCtrl+Fして#sdataで検索
238: (ワッチョイ c1b3-BHET [240d:f:2a0:600:*]) 2024/09/11(水)23:50 ID:HwHYDYw50(1) AAS
>>235
ありがとう!解決しました

ちなみに何を見ると非表示の#sdataがあることを確認できますか?
239: (ラクッペペ MM4e-co9J [133.106.89.97]) 2024/09/26(木)10:16 ID:Wk3ylYwqM(1) AAS
document.getElementById("test_id");
を使わずに
test_id.value
と、直接使うと何か問題がありますか?
240: 今の所はポクのは問題は未だ無い (ワッチョイ 3ffb-dFxZ [2400:2200:5d5:5428:*]) 2024/09/26(木)21:22 ID:hoEdOj9E0(1) AAS
📕はCanvasタグID 、📘はAタグID
─ ─ ─ ─ ─ ─ ─
🔴 = document.getElementById("📕");
🔵= document.getElementById("📘");
var 🟢 = 🔴.toDataURL("image/png");
🔵.href = 🟢;
BY 🤡 んー素晴らしい
省18
241
(1): (ワッチョイ b310-Qw5I [180.12.82.129]) 2024/10/03(木)08:27 ID:EHJ+UvFT0(1) AAS
const str = "[aaa,bbb,ccc],[ddd,eee,fff],[ggg,hhh,iii]";
という文字列を[]で囲まれた部分を取り出して配列にしたいんだけど
どうやればいいですか?
aaa,bbb,cccとddd,eee,fffとggg,hhh,iiiの3つの要素を持つ配列ってことです
242: (ラクッペペ MMff-xL0Q [133.106.77.209]) 2024/10/03(木)08:38 ID:G42V7GDMM(1) AAS
外側を[]で囲んでeval
243: (ワッチョイ 3f00-v4Ln [221.118.182.146]) 2024/10/03(木)08:40 ID:WRRjekij0(1) AAS
aaaとかbbbとかの形式によってはJSON.parseで良くないか
244: (アウアウエー Sa72-xere [111.239.153.138]) 2024/10/08(火)10:57 ID:BetB/9MOa(1/3) AAS
const str = "[aaa,bbb,ccc],[ddd,eee,fff],[ggg,hhh,iii]";
str.split(",");
245: (アウアウエー Sa72-xere [111.239.153.138]) 2024/10/08(火)11:13 ID:BetB/9MOa(2/3) AAS
// こうか?
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 ID:BetB/9MOa(3/3) AAS
// こっちか
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 ID:tTImpqsq0(1) AAS
久々にプログラミングしてるのですが、今のjavascriptって即時関数の中にコードを書くのが普通なんですか?
昔javascript触ってた時はそういうのなかったので
248: (ワッチョイ fa00-F8I7 [221.118.182.146]) 2024/10/11(金)07:51 ID:o/ilE/ed0(1/2) AAS
JSは15年くらい前から無名関数使い倒す文化だと思うけど
249: (ワッチョイ 0b4c-V3+A [2001:240:2472:c002:*]) 2024/10/11(金)09:47 ID:uRIO12V20(1/2) AAS
2005年頃には即時関数を使い倒す文化が確立されてたぞ
むしろ2015以降は代替手段ができたからQuick and Dirtyなコードじゃなければ即時関数の利用シーンはかなり減ってる
250: (ワッチョイ 9302-i3Tp [124.210.129.68]) 2024/10/11(金)09:52 ID:SCGEnJgQ0(1) AAS
letとconstができたから即時間数なんてもういらない
251
(1): (ベーイモ MM66-shoS [27.253.251.174]) 2024/10/11(金)11:05 ID:cc/oW7+2M(1) AAS
個人的には 1) その場限りのコールバック、2) 一連の手続きの中で中間変数(説明変数含む)が多くなるケース、で即時関数をよく使う
後者は「結果の局所化」及び「意図と実装の分離」の効果をサクッと得られる
252: (ワッチョイ 0b4c-V3+A [2001:240:2472:c002:*]) 2024/10/11(金)11:29 ID:uRIO12V20(2/2) AAS
即時関数は即時実行関数式(IIFE)の略で無名関数とは違うと思うんだけど>>251は無名関数について書いてない?
253: (ワッチョイ fa00-F8I7 [221.118.182.146]) 2024/10/11(金)11:48 ID:o/ilE/ed0(2/2) AAS
すまん。俺が無名関数とか言い出したから良くなかったんだろうと思う
254: (ワッチョイ b70e-3m9W [2400:2200:6f3:9a36:*]) 2024/10/15(火)06:39 ID:/S0KwaUI0(1) AAS
そもそも、基本的に関数なんていらん。
ほぼ全部、変数は、グローバル変数で宣言し
とにかく、サブルーチンは
イベンリスナー系を除いて不要だよな

てゆぅかさ、goto文がないようだし、
goto文のラベルの代わりに
無名じゃない関数
省5
255: (ワッチョイ bfa1-LGdj [2001:268:9a20:b79:*]) 2024/10/15(火)09:34 ID:vvxZNDvq0(1) AAS
>>241
Ruby のJSON.parse なら、

require 'json'

# 改行を削除する。削除しなくても同じ結果
json_str = <<'JSON'.delete( "\n" )
[ {"あ":[{"い":1}, "x"]},
[] ]
省3
256: (ワッチョイ bf7d-ZVNI [111.89.246.142]) 2024/10/19(土)15:37 ID:67I5xGKq0(1) AAS
スクリプトの問題とは微妙に話が違いますが、
tampermonkeyじゃなくてgreasemonkey使っている人いますか?
firefoxで使ってるんですが、
greasemonkeyだと自作スクリプトって簡単にはインストールできないですよね?
zipに固めないとインストールできないと思うのですが、
みなさんはどうやってるんでしょうか?
257: (ワッチョイ 977c-d0HJ [122.209.8.233]) 2024/11/19(火)23:39 ID:Jroeim880(1) AAS
JavaScriptのwindow.openで第2引数にウィンド名を指定して画面を開きます 続いて全く同じ引数で同じ画面をwindow.openで開いてるのに別ウィンドウで開いてしまいます
broadcastchannelを使っている画面でこのような事象が見られるように思えるのですが、broadcastchannelを使っている画面はwindow.openで第2引数を指定しても別ウィンドウで開いてしまうのでしょうか
因みに関連ウィンドウは全て同オリジンでウィンドウ名は半角空白も含まれない半角英文字のみです
258
(1): (ワッチョイ 0ed1-iDGe [240a:61:11c0:64d6:*]) 2024/11/20(水)09:20 ID:GmME3X9l0(1) AAS
開いたウインドウにナビゲートするのではなく?
259
(1): (ワッチョイ 1a43-d0HJ [2400:2200:7db:bf56:*]) 2024/11/20(水)10:44 ID:0q/8r7xH0(1) AAS
>>258
同じurl window.nameのページが普通に別ウィンドウで開いちゃいますね
260: (ワッチョイ 0b10-d0HJ [2400:2200:7f9:bb38:*]) 2024/11/21(木)20:21 ID:/JpQPFMK0(1) AAS
>>259
単なるロジックバグでした
お騒がせしました
261: (JP 0Ha3-/Vqe [103.151.173.94]) 2024/11/25(月)21:37 ID:NYf/jFroH(1) AAS
BEアイコン:nida.gif
EchoAPIはVS Code環境に素晴らしい追加で、APIテストが超楽になった!
262
(1): (ワッチョイ 1755-Dj8N [2400:4151:a4a0:6500:*]) 2024/12/07(土)12:00 ID:Hozm9f1q0(1) AAS
画像の読み込みが完了したら動作するのはできたけど、動画の読み込みが完了したら動作するのはimgの部分をvideoに変えてもできませんでした。
どのようにやれば動画の読み込みが完了して動作するようにできますか?

const img_elm = document.createElement("img");
document.body.appendChild(img_elm);
img_elm.src = "./test.png";
img_elm.style.position = "absolute";
img_elm.style.top = "0px";
省4
263
(1): (ワッチョイ 1f61-LsAq [221.187.41.227]) 2024/12/07(土)13:15 ID:UdJyqKqA0(1) AAS
>>262
外部リンク:developer.mozilla.org
video要素で発生するイベントはloadではなくloadeddataやloadedmetadata
264: (ワッチョイ e310-aw/E [180.12.82.129]) 2024/12/07(土)20:39 ID:Ho+7zKXc0(1) AAS
>>263
そうなんですか
ありがとうございます
265
(2): (ワッチョイ fb75-qCia [2400:2200:4de:12ad:*]) 2024/12/14(土)01:19 ID:vTrcqbr80(1) AAS
var x = 1;
if (x===1){let z = 10;}
else if (x===2){let z = 20;}
else {let z = 30;}
console.log("z = " + z);

で、エラーになります。
でもlet をvarへ変更したら、
省9
266: (ワッチョイ fbfd-gJv4 [2405:6581:23c0:5400:*]) 2024/12/14(土)06:46 ID:zVdiZk6o0(1) AAS
釣りネタつまらん
267: (ワッチョイ 7901-2/hw [60.106.71.182]) 2024/12/14(土)20:33 ID:B6x89OP40(1) AAS
>>265
好きとか嫌いとかで決めるものではない
268: (ワッチョイ 9c79-0Q8V [61.192.201.239]) 2024/12/23(月)07:23 ID:X/5iZgP80(1) AAS
letの無いIEやHTAで開発する場合var宣言が必要だから好きとか嫌いとかではない
つまり古いブラウザのjavascriptでも動かしたい場合必然的にvarだらけになる
269
(2): (ワッチョイ a392-/oXw [2404:7a84:8ea0:d700:*]) 2024/12/26(木)11:59 ID:YCJOeewg0(1/2) AAS
JS初心者です。Electron使用しています。
カウントダウンで3→2→1と表示させようとした時、For文で組もうとするとFor文が終了した一瞬で終了してしまうので以下のように一度に作動させることで解決しました。
が、もっと効率の良い組み方があればご教示頂きたいです。よろしくお願いします。
駄目だった文(3→1に飛んでしまう)
for (let i = 3; i > 0; i--) {
setTimeout(() => {
Element.innerHTML = "";
省16
270
(1): (ワッチョイ 7001-Hs8E [60.89.148.145]) 2024/12/26(木)12:33 ID:t8P1jyWN0(1) AAS
setTimeout の第2引数をiを使って変えればいい
iが3→2→1と減っていくなら、例えば1000*(4-i)とか
271: (ワッチョイ a392-/oXw [2404:7a84:8ea0:d700:*]) 2024/12/26(木)12:59 ID:YCJOeewg0(2/2) AAS
>>270
ありがとうございます。動きました。
また別の問題出てきましたが、それはそれでPromiseとか勉強してちょっと頑張ります。
272: (ワッチョイ b6e0-cPla [2400:2200:634:ad7a:*]) 2024/12/26(木)13:44 ID:rxD7DMeD0(1) AAS
ウチュ〰人からのお告げという事にしてほしいが
//絶対位置指定∵動かすために
XXX.style.position = "absolute";
//位置10へ動かす
XXX.style.top = 10 + "px";

( async ()=> {
for( let y=-300; y<10; y=y+10 ) {
省14
273: (ワッチョイ 8e1a-I2L4 [2001:240:247f:48a9:*]) 2024/12/26(木)14:00 ID:31Mawuna0(1) AAS
>>269
setInterval使え
インターバルに間に合わない可能性のある処理をするならsetTimeoutを再帰しろ

ループごとに必要もなくinsertAdjacentHTMLなんかするな
値を書き換えれば十分だろ
視覚効果を狙ってるならCSSアニメーション使え
274
(2): 265 (ワッチョイ b6e0-cPla [2400:2200:634:ad7a:*]) 2024/12/28(土)04:01 ID:4NKxKk420(1) AAS
>>265 ポクはどっちも、嫌いデス
ちょっと🤏前の自分へ返信
なに、varとlet どっちが嫌いとか
なに言ってるんだ。好き嫌いの問題でない
今のポクは、どっちも嫌い。varもlet嫌い
てっゆぅか、varとかletとかconstant
とか使わなきゃヨシ (๑•̀ㅂ•́)و✧
省10
275: (JP 0Hc2-pkw/ [60.87.218.219]) 2024/12/28(土)06:58 ID:vWbq3x/3H(1) AAS
>>274
それは質問ではないな
質問スレは日記を書く場所ではない
276: >>274 (ワッチョイ ebe0-AFTv [2400:2200:634:ad7a:*]) 2024/12/30(月)09:51 ID:Yh06n1a50(1) AAS
>>274 ちょっと前の自分へ返答
var x7 = 1;
var x7 += 2; //var再宣言・再代入OKだろ

は❌var x7 += 2;となった
やっぱvarも使っちゃダメだよな。てなワケで
今のところは、274が大正解
277
(2): 自問自答してみた (ワッチョイ 6faf-NH4A [2400:2200:438:4658:*]) 01/24(金)06:19 ID:Dgfkru+90(1/2) AAS
👤コールバック地獄(ファンクション地獄)
setTimeout(function() {
console.log(1)
setTimeout(function() {
console.log(2)
setTimeout(function() {
console.log(3)
省22
278
(1): (ワッチョイ 6faf-NH4A [2400:2200:438:4658:*]) [自問自答] 01/24(金)06:29 ID:Dgfkru+90(2/2) AAS
>>277の自作自演は、>>269様のご質問内容により閃いた
文学作品である。そしてこれは、
async await promise を実装したjavascriptエンジン
v8 の機能が以下にヤバイ位スゴイかを暗に物語ってる
複雑なCSSアニメーションより
javascriptでの任意の要素をアニメーション簡単に
実装できることを暗示してる。
省2
279
(1): >>277の続編 グダグダな自問自答 (ワッチョイ 6faf-NH4A [2400:2200:438:4658:*]) 01/25(土)04:32 ID:TAq0uG+90(1/4) AAS
🥳なるぼど、もしかして、

for(let t=1000; t<=3000; t+=1000){
setTimeout(function() {
console.log(t/1000)}, t)
}
でどう❓

👤んー、恐らくは、机上では、
省18
280
(1): >>277 の続編の続編 (ワッチョイ 6faf-NH4A [2400:2200:438:4658:*]) 01/25(土)08:48 ID:TAq0uG+90(2/4) AAS
👤ま、setTimeoutは使用はヨロシイぞ
 しかし、そのロジックは再帰でなく
 単なるループだ。for文のループ

🤡再帰?、再帰って地獄かもよ?
setTimeout(function() {
console.log(1)
setTimeout(function() {
省15
281
(1): >>277 の続編&#179; (ワッチョイ 6faf-NH4A [2400:2200:438:4658:*]) 01/25(土)13:17 ID:TAq0uG+90(3/4) AAS
💃(←初登場:ナゾの女性 という設定)
あら、これ再帰プログラム❓
信じられなーーい。ありえなーーい。

マジ、超本物の再帰プログラミングは、
自身の関数を呼び出すのが本物です。
スナワチ、以下の通りよ。

var cnt = 0 ; // Global変数にしてみた
省19
282: (ワッチョイ 6301-yzBs [60.70.162.219]) 01/25(土)15:30 ID:e0C8gdKs0(1) AAS
>>277-281
質問スレにいつまで居座るつもりなのかね
283: (ワッチョイ 6faf-NH4A [2400:2200:438:4658:*]) 01/25(土)16:34 ID:TAq0uG+90(4/4) AAS
あっそうだ、setTimeout の再帰はおいておいて
setInterval というのも在るのか。それは、時間がないから
そろそろ、オイトマとするtimeにするかも知れない
ま、再帰しなしsetTimeoutで、かつ async promiseは使用しない
のが、一番バッチリという感触。今は。では、またいつか。5日ではないいつか
(^_^)/~ 👤🤡🥳💃一同 実は同一人物だけど(⁠・⁠_⁠・⁠;⁠)
284
(1): やっぱ過疎化防止で、また来ちゃった (ワッチョイ deaf-opVO [2400:2200:438:4658:*]) 01/27(月)06:54 ID:/Hv0VvQW0(1) AAS
ふと、どうでもヨイ疑問が湧いた。

for(let t=1000; t<=3000; t+=1000){
setTimeout(function() {
console.log(t/1000)}, t)
}

と、

for(let n=1; n<=3; n+=1){
省9
285: (ワッチョイ de4b-OnvR [183.176.68.229 [上級国民]]) 01/27(月)20:38 ID:DmLoR8Bu0(1/5) AAS
>>284
ChatGPTに聞いてみたけど、全部は掲載できないので結論だけ転載

1. 「時間」を基準にして明示的に処理を進めたいなら t
2. 「ループ回数」を基準にするのが直感的なら n
個人的にはtの方が汎用性が高く、特に時間管理が重要なケースでは使いやすいと思います。
286: (ワッチョイ de4b-OnvR [183.176.68.229 [上級国民]]) 01/27(月)20:44 ID:DmLoR8Bu0(2/5) AAS
1. 可読性
tを使ったコードでは、時間そのもの(1000, 2000, 3000)が直接書かれており、「時間に基づいた処理」という意図が明確。
一方、nを使ったコードでは、「ループの回数を基準に処理」していることが読み取れる。
一般的には、「時間を意識した処理」ならt、「回数を意識した処理」ならnを使ったほうが直感的です。
287: (ワッチョイ de4b-OnvR [183.176.68.229 [上級国民]]) 01/27(月)20:44 ID:DmLoR8Bu0(3/5) AAS
2. 精度と誤差
setTimeoutは指定した時間で必ず正確に実行されるわけではなく、若干の誤差が発生します。どちらもこの点においては同じですが、**tの方が「時間の計算結果が直接書かれているため誤差の発生ポイントが少ない」**という印象を受けます。
例えば:
1000 * n // 計算で導出
1000, 2000, 3000 // そのまま指定
上記の違いから、誤差を気にするならtの方が直接的で分かりやすいです。
288: (ワッチョイ de4b-OnvR [183.176.68.229 [上級国民]]) 01/27(月)20:46 ID:DmLoR8Bu0(4/5) AAS
3. メンテナンス性
tのコード
時間間隔を変更したい場合、初期値・上限値・増加値だけを変更すればよく、スケール感の変更がしやすい。
nのコード
「1000を掛ける」という計算式が直接書かれているため、変更時に計算式部分にも目を配る必要がある。
289: (ワッチョイ 96c0-zcB2 [2001:240:2472:fef0:*]) 01/27(月)21:16 ID:T51mrGlF0(1) AAS
一般常識があるやつならtを使うメリットなんて一つも無いと分かるはずなんだがChatGPTはいまだにこんな意味のない回答するんだな

俺の使ってるChatGPTと同じとは思えない
290: (ワッチョイ 1200-wGFo [221.118.182.158]) 01/27(月)21:44 ID:mnVLXxyY0(1/2) AAS
ChatGPT君はわりと利用者に忖度した回答するので、利用者次第で馬鹿にもなる
291: (ワッチョイ de4b-OnvR [183.176.68.229 [上級国民]]) 01/27(月)21:56 ID:DmLoR8Bu0(5/5) AAS
いや、質問をそのままGPTにペーストしたよ
利用者の意見なんて1つも入れてない
292: (ワッチョイ 1200-wGFo [221.118.182.158]) 01/27(月)22:13 ID:mnVLXxyY0(2/2) AAS
質問の仕方に利用者の知識量とか思考が入り込んで、ChatGPTはそれに応じた回答をする。回答のレベルは質問のレベルに合致する
293: (ワッチョイ de4b-OnvR [119.150.245.179 [上級国民]]) 01/28(火)03:33 ID:7uzvZSX70(1) AAS
それはそうだけど、正確性からそんなに大きく逸脱はしてないでしょう
というか、客観的に大多数に正しいと思われる解決法を提示してくれるから助かる
無料のは今だに嘘が混じってる事が多いんだけど、有料のPlusは結構正確になった
参照してる知識量が無料のものの何倍もあるみたい
294: (アウアウウー Sa79-mO6r [106.130.52.8]) 02/06(木)13:59 ID:FTswYlc4a(1) AAS
外国のサイトにある動画から字幕を抜き出したくて色々試したけど上手く行かなかった(www.francetvinfo.frというとこ)
でもffmpegだとあっさり成功した
もしJavaScriptに詳しければffmpegというツールに頼らず抜き出せたのだろうか?
chatGPTに聞くとDOMで作成してるみたいな答えが帰ってきたので字幕作成はJavaScriptで行っているのかなと思った
今字幕抜き出せた喜びとツールに頼った悔しさが入り混じってるけど皆なら自力で抜き出せた?
295
(1): (JP 0H96-qIVI [133.106.33.6]) 02/13(木)12:33 ID:DZyx9aKAH(1) AAS
失礼します。
insertBeforeでHTML要素にnodeを追加する際、複数ある要素(class)の1番最後にのみnodeを挿入したいのですが、可能でしょうか?

<div class="unko"></div> //1
<div class="unko"></div> //2
<div class="unko"></div> //3
<div class="unko"></div> //4
<div class="unko"></div> //~以下ランダムで増減
省6
296: (ワッチョイ 9eba-k2ZP [2001:240:241a:56bf:*]) 02/13(木)13:01 ID:xGLXSNfR0(1) AAS
:last-of-typeとか:last-childとかで出来るけどそういうの知らなくても”配列の長さ-1”くらいは思いつこうよ
297: 295 (ワッチョイ b149-GKZ3 [180.221.149.54]) 02/13(木)13:14 ID:8KNio/Em0(1/2) AAS
> 296
つまりあまたはわたしをアホとおっしゃるのですか?
298: 295 (ワッチョイ b149-GKZ3 [180.221.149.54]) 02/13(木)13:15 ID:8KNio/Em0(2/2) AAS
💩
299: (ワッチョイ 5e0b-XAIF [153.164.41.34]) 02/13(木)13:39 ID:tamKTj1t0(1) AAS
>>295
hoge[hoge.length-1].insertAdjacentElement("afterend", elemDiv);
300
(1): (ワッチョイ 7d7c-F9OP [122.212.18.110]) 04/05(土)12:51 ID:7VBJ2biq0(1) AAS
関数定義するとき、
function funcName() { ~}

const funcName = () => { ~ }
で、関数内でthisの参照先を気にしないとすると、どっちの書き方のほうがいい、とかありますか?

なんとなくconst~で書いてたときがあるんですが、VSCodeでアウトライン表示したときに、functionで定義するとメソッドのアイコンになるけど、constで書くと変数扱いになるで他の変数と(ツリー上)区別が付きにくくなり、functionの書き方に戻しました。
301: (ワッチョイ 058f-iziL [2001:ce8:137:595f:*]) 04/05(土)21:28 ID:sUMv9Ks50(1) AAS
>>300
巻き上げがあるから関数宣言はやめた方がいい
302: (ワッチョイ 0507-pzHV [2001:240:2463:dde5:*]) 04/05(土)21:48 ID:lcZxDDXa0(1) AAS
巻き上げがあったら困る場合だけ関数式

関数宣言のほうが
- 巻き上げがあるからトップダウンで書ける
- 名前付きの関数なのでdebugabilityが高い
ので迷ったらまずはこっち
303: (ワッチョイ 372f-pQOn [60.236.132.37]) 05/08(木)23:46 ID:fGnrU9Lw0(1) AAS
constに入れておかないと、チーターに簡単に上書き改竄されたりすんのか
304: (ワッチョイ ef4b-3gjP [119.150.14.214 [上級国民]]) 05/11(日)01:02 ID:N+caZpkb0(1) AAS
水前寺清子?
305: (ワッチョイ cfcf-+6HO [153.205.197.132]) 05/11(日)17:20 ID:NQ286Pqc0(1) AAS
バイナリをいじる場合はconstとか関係ない。
306: (ワッチョイ 9722-2R+f [180.24.66.223 [上級国民]]) 05/30(金)22:49 ID:1o7EfCHn0(1/2) AAS
愚痴ですが…
当方プログラミングはC言語やVBA、ほんの少しPythonを触ったことがあるぐらいのド素人です
今はサポートされてない昔の測定機器のSDKですが、dllファイルがVBAからライブラリとして読めない現象が発生
原因分からず、VBA詳しい友人にdllファイルをアンコンパイルして解析してもらうとC++で書かれているためそもそもVBAで読めないと言われました
ChatGPTにも相談すると中間Wrapper作りますよ!と言われ、紆余曲折有りながら出来上がったものをVBAで読み込んでも動作せず
諦めてダメ元で公式のサポートを頼るも、日本国内の代理店からは対応できないと断られ、やむを得ず国際電話で計測器メーカー直轄の韓国の拠点へ電話
後日メール返すとのこと
省1
307: (ワッチョイ 9722-2R+f [180.24.66.223 [上級国民]]) 05/30(金)22:50 ID:1o7EfCHn0(2/2) AAS
ちなみに今回の対応も韓国への国際電話も自腹です(^q^)
何やってるんだろうな俺
308: (ワッチョイ e3b4-nntB [2400:4151:a4a0:6500:*]) 10/11(土)20:33 ID:n5gETjNc0(1) AAS
video_elm.addEventListener(
"ended",
function(){
alert("全て見た");
}
);
動画を再生しきると「全て見た」と出るけど
省3
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.568s*