JavaScript を自ら学ぶ人のための質問スレッドです。
>>2-6のテンプレを読んだ上で質問してください。次スレは>>950が>>2のテンプレ案(本スレで改善案があれば考慮)を元に立ててください
■質問を書く上で
(1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。
(2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。
(ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など)
(3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。
(4) 常に自発的に調べる心構えを持ってください。
具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。
わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。
(5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。
(6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。
※必ず「問題の事象が再現されること」を確認してください。
必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。
(7) サンプルコードに HTML が含まれる場合は http://validator.w3.org/ で [Check] してみてください。
(8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2の質問テンプレートを活用してみてください。
(9) ライブラリ関連の質問は禁止です。関連スレにあるライブラリ質問スレで質問して下さい。
(10) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。
※前スレ
+ JavaScript の質問用スレッド vol.123 +
https://mevius.5ch.net/test/read.cgi/tech/1491143438/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:: EXT was configured
+ JavaScript の質問用スレッド vol.124 +
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 8a52-hQZx [61.87.108.223])
2021/11/10(水) 15:24:24.80ID:jxD2VXPG0418デフォルトの名無しさん (ワッチョイ 7501-3f/3 [36.240.125.131])
2022/01/27(木) 11:57:20.38ID:ZSUaXKzX0 >>417
mousedownはオート・スクロール・モードのことか
https://atmarkit.itmedia.co.jp/fwin2k/win2ktips/759autoscroll/autoscroll.html
2アクション必要だから、モード検知がやや複雑化しそうだな…
---
自動スクロールを検知して、自動スクロール以外を手動スクロール扱いする方向で考えてた
これなら、キーバインド変更されても対応出来る
mousedownはオート・スクロール・モードのことか
https://atmarkit.itmedia.co.jp/fwin2k/win2ktips/759autoscroll/autoscroll.html
2アクション必要だから、モード検知がやや複雑化しそうだな…
---
自動スクロールを検知して、自動スクロール以外を手動スクロール扱いする方向で考えてた
これなら、キーバインド変更されても対応出来る
419デフォルトの名無しさん (ワッチョイ 1301-tVHJ [123.216.166.161])
2022/01/29(土) 02:18:01.02ID:/eUfBI510 oninput="value=value.replace(';','1')"
置換元が特定の全角記号(¥:;@等)の場合、置換先の文字が2回入力されます。
書き方の問題ですか?回避方法はありますか?
chromeとedgeで発生しました。
ieでは発生しませんでした。
置換元が特定の全角記号(¥:;@等)の場合、置換先の文字が2回入力されます。
書き方の問題ですか?回避方法はありますか?
chromeとedgeで発生しました。
ieでは発生しませんでした。
420デフォルトの名無しさん (ブーイモ MM8d-FKQo [210.138.179.136])
2022/01/29(土) 03:13:10.90ID:wMUjEsRbM KeyboardEvent.isComposingで変換中か判定したらいい
<input id="test">
const elm = document.querySelector("#test");
elm.addEventListener("keyup",(e)=>{
if(!e.isComposing){
elm.value =
e.target.value.replaceAll(";","1")
}
})
<input id="test">
const elm = document.querySelector("#test");
elm.addEventListener("keyup",(e)=>{
if(!e.isComposing){
elm.value =
e.target.value.replaceAll(";","1")
}
})
421デフォルトの名無しさん (ワッチョイ 8bdb-dw97 [217.178.96.78])
2022/01/29(土) 09:47:04.60ID:/uVNTTXR0 >>410
JavaScriptは初心者向けの簡易言語。
JavaScriptは初心者向けの簡易言語。
422デフォルトの名無しさん (ワッチョイ 13b1-21ac [123.1.38.203])
2022/01/29(土) 23:21:16.05ID:vLNLUfHR0 一応入門書を一通り終えたのでelectronでGUI作ろうと思ったら、予想以上に難しくて挫折した。
electron使いの人いる?
いたらどれだけのレベルにならないと作れないか教えて。
electron使いの人いる?
いたらどれだけのレベルにならないと作れないか教えて。
423デフォルトの名無しさん (ワッチョイ 8b2c-Cnlt [153.136.94.40])
2022/01/30(日) 00:53:12.46ID:8AeUKyTB0 >>419
Node.js で実行したら、1回しか置換されない
inText = 'あい;;ab;;12';
outText = inText.replace(';', '1');
//=> あい1;ab;;12
Node.js で実行したら、1回しか置換されない
inText = 'あい;;ab;;12';
outText = inText.replace(';', '1');
//=> あい1;ab;;12
424デフォルトの名無しさん (アウアウアー Sa8b-67Xn [27.85.207.48])
2022/01/30(日) 02:04:42.24ID:acbp/SqRa >>422
俺はelectron使いじゃないけど今本屋に並んでる2022年3月号の日経ソフトウエアでElectronでデスクトップアプリ開発特集載ってたよ
俺はelectron使いじゃないけど今本屋に並んでる2022年3月号の日経ソフトウエアでElectronでデスクトップアプリ開発特集載ってたよ
425デフォルトの名無しさん (ワッチョイ 1301-tVHJ [123.216.166.161])
2022/01/30(日) 12:10:56.23ID:5V9R/BtT0 >>420
これだと普通に置換できますね
>>423
環境によるんですかね
結局こうしました。半角の数字と半角のコロンだけ表示。
.replace(/[0-9:]/g,s => String.fromCharCode(s.charCodeAt(0) - 65248)).replace(/[^\:\d]/g,'').replace('::',':');
最後に[::]→[:]
変なやり方だと思うけど:を二回使う事は無いのでとりあえずOK
replaceどうのこうのではなくて、oninputが2回実行されてるみたいです。
oninput="value=value + 'あ'"
特定の全角記号だと「;あ;あ」、全角英字なら「;あ」
これだと普通に置換できますね
>>423
環境によるんですかね
結局こうしました。半角の数字と半角のコロンだけ表示。
.replace(/[0-9:]/g,s => String.fromCharCode(s.charCodeAt(0) - 65248)).replace(/[^\:\d]/g,'').replace('::',':');
最後に[::]→[:]
変なやり方だと思うけど:を二回使う事は無いのでとりあえずOK
replaceどうのこうのではなくて、oninputが2回実行されてるみたいです。
oninput="value=value + 'あ'"
特定の全角記号だと「;あ;あ」、全角英字なら「;あ」
426デフォルトの名無しさん (アウアウエー Sae3-Fqt4 [111.239.155.184])
2022/01/30(日) 12:57:51.16ID:hMKxlwO1a querySelector
で帰ってきたelementのメソッドでcloset()だとRoot方向にしか検索できませんがchild方向にelementを検索する方法はありますか?
で帰ってきたelementのメソッドでcloset()だとRoot方向にしか検索できませんがchild方向にelementを検索する方法はありますか?
427デフォルトの名無しさん (ワッチョイ 1333-6jTK [59.190.4.184])
2022/01/30(日) 13:01:07.63ID:/oi//KEc0 chiled方向に検索するのがquerySelectorじゃないのですか?
428デフォルトの名無しさん (アウアウエー Sae3-Fqt4 [111.239.155.184])
2022/01/30(日) 13:06:33.56ID:hMKxlwO1a >>427
documentだけじゃなくてelementに対してもquerySelectorメソッドつかえるんですね。ありがとうございます
documentだけじゃなくてelementに対してもquerySelectorメソッドつかえるんですね。ありがとうございます
429デフォルトの名無しさん (ワッチョイ eb01-Yk3C [1.112.121.19])
2022/01/30(日) 13:12:27.53ID:y4il4Rjb0430デフォルトの名無しさん (ワッチョイ 1333-6jTK [59.190.4.184])
2022/01/31(月) 12:50:53.75ID:rc3LWwE50 excelの配列数式などでAND OR の代わりに * + 等を使ったりしていましたが
javascriptの条件式のなかに&&の代わりに*を使った場合、
違いはありますでしょうか。
*だと左辺がtrueであっても右辺も評価するなどするのでしょうか。
javascriptの条件式のなかに&&の代わりに*を使った場合、
違いはありますでしょうか。
*だと左辺がtrueであっても右辺も評価するなどするのでしょうか。
431デフォルトの名無しさん (ブーイモ MMcb-9G6j [163.49.200.36])
2022/01/31(月) 13:20:30.75ID:QWw3Y16fM >>430
そんなもん手元のコンソールに打って直接確認した方が早いと思うけど、そうしたくない理由でもあるの?
そんなもん手元のコンソールに打って直接確認した方が早いと思うけど、そうしたくない理由でもあるの?
432デフォルトの名無しさん (ワッチョイ 9161-bU36 [122.16.165.244])
2022/01/31(月) 13:34:41.41ID:KJiW2Lya0 だってただの乗算・加算なのだから一連の計算全部しないと結果は出せないもの
文字列だった場合バグの温床になりかねないので素直に論理演算子使っとけ
文字列だった場合バグの温床になりかねないので素直に論理演算子使っとけ
433デフォルトの名無しさん (ワッチョイ 1333-6jTK [59.190.4.184])
2022/01/31(月) 15:13:48.28ID:rc3LWwE50 ありがとうございます
434デフォルトの名無しさん (ワッチョイ 9956-6WVI [124.25.53.64])
2022/02/01(火) 14:41:29.69ID:wfvu5dwy0 > if(undefined){console.log("undefined is true");} else {console.log("undefined is false");}
undefined is false
undefined
> if(!undefined){console.log("!undefined is true");} else {console.log("!undefined is false");}
!undefined is true
undefined
> if(true+console.log("exec")){console.log("true"); }else{console.log('false')}
exec
false
undefined
> if(console.log("exec")*console.log("exec2")){console.log("true"); }else{console.log('false')}
exec
exec2
false
undefined
論理演算子的な打ち切りはしてないね。普通に算術演算子だわw
undefined is false
undefined
> if(!undefined){console.log("!undefined is true");} else {console.log("!undefined is false");}
!undefined is true
undefined
> if(true+console.log("exec")){console.log("true"); }else{console.log('false')}
exec
false
undefined
> if(console.log("exec")*console.log("exec2")){console.log("true"); }else{console.log('false')}
exec
exec2
false
undefined
論理演算子的な打ち切りはしてないね。普通に算術演算子だわw
435デフォルトの名無しさん (ワッチョイ 9956-6WVI [124.25.53.64])
2022/02/01(火) 14:46:27.83ID:wfvu5dwy0 普通に手打ちしてたら、空白とかクォートとかセミコロンの打ち方に全然整合性ないでやんの、俺w
436231 (スッップ Sd33-aqeu [49.98.171.121])
2022/02/04(金) 16:32:44.06ID:1UhKSGd+d ■質問テンプレート
【環境】Android10 F-51A
Chrome 93.0.4577.62
【何をしたのか】セーブ(サンプルコードの一番下の方で実行)を2回以上実行すると、ロード出来なくなる。
【エラーメッセージ】出ません。
【期待する結果】セーブ、ロードが正常に行われるようにする。
【サンプルコード】
https://ideone.com/BJQ4qV
懲りずにお邪魔します。
解決案など思いついた方いらっしゃったら、よろしくお願いします。
今回でアドバイスを得られない、あるいは私の理解が及ばなかった場合、ココナラなどの利用も検討しています。
解決案は知らんけど、有償で良いならこのサイトがおすすめ、みたいな情報も頂けたら嬉しいです。
【環境】Android10 F-51A
Chrome 93.0.4577.62
【何をしたのか】セーブ(サンプルコードの一番下の方で実行)を2回以上実行すると、ロード出来なくなる。
【エラーメッセージ】出ません。
【期待する結果】セーブ、ロードが正常に行われるようにする。
【サンプルコード】
https://ideone.com/BJQ4qV
懲りずにお邪魔します。
解決案など思いついた方いらっしゃったら、よろしくお願いします。
今回でアドバイスを得られない、あるいは私の理解が及ばなかった場合、ココナラなどの利用も検討しています。
解決案は知らんけど、有償で良いならこのサイトがおすすめ、みたいな情報も頂けたら嬉しいです。
437デフォルトの名無しさん (ワッチョイ 8b7b-hTuy [153.185.174.10])
2022/02/04(金) 17:05:32.54ID:eOennQVj0 全然見てないしよくわからんけど、なんでセーブとロードを繰り返してるの?
438デフォルトの名無しさん (ブーイモ MMeb-bj7G [133.159.149.63])
2022/02/04(金) 17:14:57.96ID:kUcQ1Y3lM439デフォルトの名無しさん (ワッチョイ 9161-bU36 [122.16.165.244])
2022/02/04(金) 17:20:39.40ID:5yD7H7/00440231 (スッップ Sd33-aqeu [49.98.171.121])
2022/02/04(金) 17:21:33.29ID:1UhKSGd+d >>437
最初のセーブでは、ロード成功するんです。
2回目のセーブをすると、ロードに失敗するんです。
一度目の処理では成功してるけど、二度目で失敗してるのを見て貰うために、今回のコードでは繰り返しにしました。
最初のセーブでは、ロード成功するんです。
2回目のセーブをすると、ロードに失敗するんです。
一度目の処理では成功してるけど、二度目で失敗してるのを見て貰うために、今回のコードでは繰り返しにしました。
441デフォルトの名無しさん (ブーイモ MMcb-FKQo [163.49.214.185])
2022/02/04(金) 17:22:14.91ID:58zz3a0tM まず変数はletかconstを使って明示的に宣言する
あと非同期処理の勉強をした方がいい
url先のコードは処理が行われる順番を考慮してない
コードで例示すると
const elm = document.querySelector("#input")
let mail;
elm.oninput = (e) => {
mail = e.target.value;
}
console.log(mail);
みたいなコードを書いてる
oninputはすぐに呼び出されないのに先にmailを参照しているからバグる
他にも色々ありそうだけど自分がパッと見つけられた間違いはこれだけ
(文字が全角になってるのはCloudflare対策)
あと非同期処理の勉強をした方がいい
url先のコードは処理が行われる順番を考慮してない
コードで例示すると
const elm = document.querySelector("#input")
let mail;
elm.oninput = (e) => {
mail = e.target.value;
}
console.log(mail);
みたいなコードを書いてる
oninputはすぐに呼び出されないのに先にmailを参照しているからバグる
他にも色々ありそうだけど自分がパッと見つけられた間違いはこれだけ
(文字が全角になってるのはCloudflare対策)
442デフォルトの名無しさん (ブーイモ MMdd-bj7G [202.214.230.249])
2022/02/04(金) 17:23:09.66ID:0CWz3hfAM 変数の宣言方法と変数のスコープについても学んで下さい
”use strict”;使うように
”use strict”;使うように
443231 (スッップ Sd33-aqeu [49.98.171.121])
2022/02/04(金) 17:27:11.67ID:1UhKSGd+d444231 (スッップ Sd33-aqeu [49.98.171.121])
2022/02/04(金) 17:27:20.65ID:1UhKSGd+d みなさま
445231 (スッップ Sd33-aqeu [49.98.171.121])
2022/02/04(金) 17:28:39.30ID:1UhKSGd+d 失礼しました。
予想以上に早く、また親切にアドバイスして頂けて嬉しいです。
本当にありがとうございました。
予想以上に早く、また親切にアドバイスして頂けて嬉しいです。
本当にありがとうございました。
446231 (スッップ Sd33-aqeu [49.98.171.121])
2022/02/04(金) 17:36:54.98ID:1UhKSGd+d 今回躓いたところは完璧に解決しました。
皆様、本当にありがとうございます。
皆様、本当にありがとうございます。
447デフォルトの名無しさん (ブーイモ MMcb-FKQo [163.49.214.155])
2022/02/04(金) 17:37:47.88ID:fRxFESBHM448デフォルトの名無しさん (ワッチョイ 8901-e6rN [126.4.159.20])
2022/02/04(金) 23:04:44.52ID:gGuISdVA0 eval関数なしで
テキストボックスに入力されている
5*6*4+56/24のような計算をするにはどうすればいいでしょうか?
テキストボックスに入力されている
5*6*4+56/24のような計算をするにはどうすればいいでしょうか?
449デフォルトの名無しさん (ワッチョイ 8b46-FxgI [153.161.191.103])
2022/02/04(金) 23:19:30.94ID:/i5Sn7pz0 再帰下降構文解析でググれ
450デフォルトの名無しさん (スップ Sd03-ey3B [1.72.9.177])
2022/02/05(土) 00:01:28.09ID:sD6dJYyZd eval is evil
451デフォルトの名無しさん (ワッチョイ d501-g7wQ [126.4.159.20])
2022/02/05(土) 15:51:37.55ID:7rGxUilP0452デフォルトの名無しさん (ワッチョイ d501-v6+h [126.15.28.3])
2022/02/06(日) 14:13:43.12ID:jyf5OL160453デフォルトの名無しさん (JP 0Ha1-zD41 [126.249.157.89])
2022/02/07(月) 07:37:13.78ID:90TSH41+H グッドモーニングショーで未だにファックス使ってコロナ集計してやんのwって言ってましたけど
特定サイトで入力した個人情報や体調情報などをQRコード化して読み取りパスを設定し
その情報を診療所などで携帯で読み込むと、自動的に院内システムと保健所など供給機関にJSONで送情されるようなの
あっという間にできそうなんだけど
セキュリティ面感がなければ2時間くらいでできそう
特定サイトで入力した個人情報や体調情報などをQRコード化して読み取りパスを設定し
その情報を診療所などで携帯で読み込むと、自動的に院内システムと保健所など供給機関にJSONで送情されるようなの
あっという間にできそうなんだけど
セキュリティ面感がなければ2時間くらいでできそう
454デフォルトの名無しさん (ワッチョイ 355f-CoXB [14.10.58.225])
2022/02/07(月) 08:42:42.57ID:2FnRi9wN0455デフォルトの名無しさん (アウアウウー Sa09-4urG [106.146.65.119])
2022/02/07(月) 08:56:33.13ID:4W18gTd9a 単機能のシステムなら出来そうだけど
あれもこれもと仕様が膨れ上がって予算もウン十億になり
最終的に使い勝手の悪いガラクタになるのがオチ
https://wedge.ismedia.jp/articles/-/22205?layout=b
あれもこれもと仕様が膨れ上がって予算もウン十億になり
最終的に使い勝手の悪いガラクタになるのがオチ
https://wedge.ismedia.jp/articles/-/22205?layout=b
456デフォルトの名無しさん (ワッチョイ cb2c-2zGl [153.136.94.40])
2022/02/07(月) 12:51:27.00ID:QUqmCtWk0 規格を統一するのが難しい
医療機関は、各SIer でバラバラだろ
医療機関は、各SIer でバラバラだろ
457デフォルトの名無しさん (JP 0Ha1-zD41 [126.249.157.89])
2022/02/08(火) 06:39:24.19ID:L7XKTsfqH 先進諸国ってシステム規格は統一してるん?
なんで日本だけファックスよ?
なんで日本だけファックスよ?
458デフォルトの名無しさん (ワッチョイ 2333-2cIz [59.190.4.184])
2022/02/10(木) 18:43:10.54ID:yttBwpD00 firefoxを使ってるんですが
マウスのソフトウェアの左クリックの連射機能を使うことがあって
その際にリンクやボタンを多重クリックを避けたいので
特定のエレメントにイベントリスナーでクリックするとstyle.display = 'none'にするようにしたんですが
これが実際に多重クリックになってるかどうかは
どのように判断すればよろしいのでしょうか
ブラウザの開発ツールなどで簡単にわかる方法ありますでしょうか?
それとももう一度同じエレメントにイベントリスナーでクリックした場合
カウンターにインクリメントさせてconsole.logがいいのでしょうか
(この方法も正確に取れているのかは私にはわかりません)
マウスのソフトウェアの左クリックの連射機能を使うことがあって
その際にリンクやボタンを多重クリックを避けたいので
特定のエレメントにイベントリスナーでクリックするとstyle.display = 'none'にするようにしたんですが
これが実際に多重クリックになってるかどうかは
どのように判断すればよろしいのでしょうか
ブラウザの開発ツールなどで簡単にわかる方法ありますでしょうか?
それとももう一度同じエレメントにイベントリスナーでクリックした場合
カウンターにインクリメントさせてconsole.logがいいのでしょうか
(この方法も正確に取れているのかは私にはわかりません)
459デフォルトの名無しさん (JP 0Ha1-zD41 [126.249.157.89])
2022/02/11(金) 20:34:20.02ID:efWVJIaOH 質問させてください
let ar={a:{a1:1}};
console.log(a1); // @ a1 is not defined
let {a:{a1}}=ar;
console.log(a1); // A 1
a1を出力したのですが、
@は未定義
Aは1が出力されています
どうして@とAの出力結果が異なるのでしょうか?
let ar={a:{a1:1}};
console.log(a1); // @ a1 is not defined
let {a:{a1}}=ar;
console.log(a1); // A 1
a1を出力したのですが、
@は未定義
Aは1が出力されています
どうして@とAの出力結果が異なるのでしょうか?
460デフォルトの名無しさん (ササクッテロラ Spa1-6JR8 [126.193.40.232])
2022/02/11(金) 20:42:04.99ID:XbmfRAz/p >>459
オブジェクトの分割代入されるから。
オブジェクトの分割代入されるから。
461デフォルトの名無しさん (ワッチョイ 77f0-B80Q [124.45.127.106])
2022/02/12(土) 11:33:13.66ID:RPVXSf4c0462デフォルトの名無しさん (ブーイモ MM42-/t+S [49.239.64.187])
2022/02/12(土) 11:55:49.55ID:GfpJrBC6M >>459
>>460が書いてるように3行目は分割代入なんだけど
特にオブジェクトデストラクチャリングと呼ばれる機能
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#object_destructuring
3行目でaとa1という変数が定義される
それ以前はa1という変数が定義されてないからundefined
とりあえずstrictモードを使いましょう
>>460が書いてるように3行目は分割代入なんだけど
特にオブジェクトデストラクチャリングと呼ばれる機能
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#object_destructuring
3行目でaとa1という変数が定義される
それ以前はa1という変数が定義されてないからundefined
とりあえずstrictモードを使いましょう
463デフォルトの名無しさん (ワッチョイ 627c-B80Q [43.235.241.201])
2022/02/12(土) 23:28:01.59ID:c6xzFFYJ0 何で理解していないのにこんな書き方して分かりませんって質問しているのだろうかw
目的は?
目的は?
464デフォルトの名無しさん (ワッチョイ 238b-GNxr [210.228.102.1])
2022/02/13(日) 11:28:11.91ID:Y75YevLW0 >>462
3行目のaは変数じゃない
3行目のaは変数じゃない
465デフォルトの名無しさん (ワッチョイ 3f01-rCQD [126.85.85.31])
2022/02/15(火) 16:00:20.18ID:WCBHI7+n0 JavaScript の配列の要素をすべて削除する
https://qiita.com/niwasawa/items/89e86c0fd85ad4591e1c
arr.length = 0 じゃダメなの?
https://qiita.com/niwasawa/items/89e86c0fd85ad4591e1c
arr.length = 0 じゃダメなの?
466デフォルトの名無しさん (オッペケ Sr3f-Yp6Q [126.194.119.131])
2022/02/15(火) 16:55:47.25ID:6QhYGEARr arr = null
もしくは
arr = []
じゃダメなの?
もしくは
arr = []
じゃダメなの?
467デフォルトの名無しさん (ワッチョイ 3f01-4ITz [126.209.38.115])
2022/02/15(火) 20:35:06.19ID:v0u4j5eD0 >>465
いいと思うが、そう思ったなら本人に伝えればいいのに
あと、teratailスレのは誤投稿か?
https://mevius.5ch.net/test/read.cgi/tech/1630107050/304
いいと思うが、そう思ったなら本人に伝えればいいのに
あと、teratailスレのは誤投稿か?
https://mevius.5ch.net/test/read.cgi/tech/1630107050/304
468デフォルトの名無しさん (ブーイモ MMbb-lHx+ [202.214.167.89])
2022/02/15(火) 20:41:42.47ID:YCvdbcjXM469デフォルトの名無しさん (オッペケ Sr3f-Yp6Q [126.194.119.131])
2022/02/15(火) 21:08:32.51ID:6QhYGEARr >>468
constなのに長さ0にしちゃっていいの?
constなのに長さ0にしちゃっていいの?
470デフォルトの名無しさん (ワッチョイ 3f01-4ITz [126.209.38.115])
2022/02/15(火) 21:10:50.44ID:v0u4j5eD0471デフォルトの名無しさん (オッペケ Sr3f-Yp6Q [126.194.119.131])
2022/02/15(火) 22:48:45.41ID:6QhYGEARr472デフォルトの名無しさん (ワッチョイ af5f-+p08 [14.8.71.128])
2022/02/15(火) 23:01:49.17ID:z5poVj2c0473デフォルトの名無しさん (ワッチョイ ab5f-K+Vi [106.73.17.192])
2022/02/15(火) 23:03:26.68ID:JA2Mlap+0 別に変更不可って意味でconst使わなくないか?
474デフォルトの名無しさん (オッペケ Sr3f-Yp6Q [126.194.119.131])
2022/02/15(火) 23:07:54.82ID:6QhYGEARr やっぱjavascriptは欠陥言語だよな
定数とオブジェクトでconstの使い方変わるし
定数とオブジェクトでconstの使い方変わるし
475デフォルトの名無しさん (ワッチョイ c6a7-rCQD [153.216.75.243])
2022/02/15(火) 23:20:36.81ID:NudRi/Oa0 ワロスw
476デフォルトの名無しさん (スッップ Sd42-qzeC [49.98.169.237])
2022/02/15(火) 23:24:11.41ID:oyYnjwf7d 草
477デフォルトの名無しさん (ワッチョイ afe6-PSJX [14.3.170.77])
2022/02/15(火) 23:54:38.03ID:DOsFVpUk0 笑
478デフォルトの名無しさん (ワッチョイ afe6-PSJX [14.3.170.77])
2022/02/15(火) 23:54:58.40ID:DOsFVpUk0 いや
大爆
大爆
479デフォルトの名無しさん (ワッチョイ af5f-ZaaF [14.10.58.225])
2022/02/16(水) 00:38:29.63ID:dZoJOzXw0 欠陥言語か?cのconstと同じでは?
480デフォルトの名無しさん (ワッチョイ c62c-TxqZ [153.136.94.40])
2022/02/16(水) 12:21:54.58ID:Nuw/c3FA0 Ruby でも、入れ物と各要素は別。
shallow copy と同じ。動的言語は全てそう。
deep copy, deep freeze などは、誰かが作る必要がある
入れ物をフリーズしても、各要素は変更できる
ary = %w(a b).freeze
ary[ 0 ].upcase!
p ary #=> ["A", "b"]
だから、入れ物と各要素の両方を、フリーズする必要がある
ary_2 = %w(x y).map( &:freeze ).freeze
ary_2[ 0 ].upcase! #=> エラー。変更できない!
shallow copy と同じ。動的言語は全てそう。
deep copy, deep freeze などは、誰かが作る必要がある
入れ物をフリーズしても、各要素は変更できる
ary = %w(a b).freeze
ary[ 0 ].upcase!
p ary #=> ["A", "b"]
だから、入れ物と各要素の両方を、フリーズする必要がある
ary_2 = %w(x y).map( &:freeze ).freeze
ary_2[ 0 ].upcase! #=> エラー。変更できない!
481デフォルトの名無しさん (アウアウアー Sa5e-DiUz [27.85.205.92])
2022/02/16(水) 22:54:05.43ID:CjOKbN9ya スレ違いも守れない身勝手なクズ
482デフォルトの名無しさん (ワッチョイ cf10-SFaO [180.12.82.129])
2022/02/17(木) 22:37:18.01ID:TmsR/NWJ0 <input type="button" value="aaaaaa" id="test1">
<br>
<input type="button" value="bbbbbb" id="test2">
<スクリプト>
var id_list = ["test1","test2"];
for(let n=1;n<=id_list.length;n++){
var elm = document.getElementById(id_list[n-1]);
elm.addEventListener(
"click",
function(e){
alert(elm.value);
}
);
}
</スクリプト>
aaaaaaボタンをクリックしてもbbbbbbと表示されてしまいます
どこが間違っているんですか?
<br>
<input type="button" value="bbbbbb" id="test2">
<スクリプト>
var id_list = ["test1","test2"];
for(let n=1;n<=id_list.length;n++){
var elm = document.getElementById(id_list[n-1]);
elm.addEventListener(
"click",
function(e){
alert(elm.value);
}
);
}
</スクリプト>
aaaaaaボタンをクリックしてもbbbbbbと表示されてしまいます
どこが間違っているんですか?
483デフォルトの名無しさん (ワッチョイ 5232-DrOF [133.207.66.224])
2022/02/17(木) 23:03:32.28ID:Np/YPCaB0484デフォルトの名無しさん (アウアウエー Sa7a-LSse [111.239.156.228])
2022/02/17(木) 23:21:36.38ID:eqAwClgCa alert (elm.value)をalert(e.currentTarget.value)に変えたればおけ
485デフォルトの名無しさん (ワッチョイ 238b-FJ3i [210.228.102.1])
2022/02/17(木) 23:28:41.09ID:7BD8Ewk+0 alert(this.value)
または
const elm = document.getElementById(id_list[n-1])
または
const elm = document.getElementById(id_list[n-1])
486デフォルトの名無しさん (ササクッテロラ Sp3f-/9rH [126.193.40.232])
2022/02/17(木) 23:31:46.94ID:U/Ab4M74p これから新規でスクリプト書くなら、特別な理由がない限りvarは使わずletかconstだけ使うほうが、変なミス起こらなくていいと思う
487デフォルトの名無しさん (ワッチョイ c62c-TxqZ [153.136.94.40])
2022/02/18(金) 10:44:02.23ID:tiifqQ9V0 初心者は、jQuery を使えばよい
分かりにくい、this の意味も変えてある
分かりにくい、this の意味も変えてある
488デフォルトの名無しさん (ワッチョイ c62c-TxqZ [153.136.94.40])
2022/02/18(金) 11:35:27.02ID:tiifqQ9V0 jQuery で、ボタンの外側・親にイベントを付けて、親で、子のイベントをキャッチできる
<div id="btn-wrap">
<button class="BtnA BtnAll" value="1">A-1</button>
<button class="BtnA BtnAll" value="2">A-2</button>
<button class="BtnB BtnAll" value="3">B-3</button>
</div>
$( function ( ) {
// 外側・親にイベントを付けて、親で、子のイベントをキャッチする
$( '#btn-wrap' ).on( 'click', function ( event ) {
const value = $( event.target ).prop( 'value' )
console.log( value )
alert( value )
} );
} );
または、共通のclass を付けて、そのクラスだけのイベントをキャッチできる
// .BtnA のみ
$( '.BtnA' ).on( 'click', function ( event ) {
const value = $( this ).prop( 'value' )
console.log( value )
alert( value )
} );
<div id="btn-wrap">
<button class="BtnA BtnAll" value="1">A-1</button>
<button class="BtnA BtnAll" value="2">A-2</button>
<button class="BtnB BtnAll" value="3">B-3</button>
</div>
$( function ( ) {
// 外側・親にイベントを付けて、親で、子のイベントをキャッチする
$( '#btn-wrap' ).on( 'click', function ( event ) {
const value = $( event.target ).prop( 'value' )
console.log( value )
alert( value )
} );
} );
または、共通のclass を付けて、そのクラスだけのイベントをキャッチできる
// .BtnA のみ
$( '.BtnA' ).on( 'click', function ( event ) {
const value = $( this ).prop( 'value' )
console.log( value )
alert( value )
} );
489488 (ワッチョイ c62c-bORD [153.136.94.40])
2022/02/18(金) 12:16:47.94ID:tiifqQ9V0 >>488
に追加
セレクターをカンマで区切れば、A またはB でも出来る
// .BtnA or .BtnB のみ
$( '.BtnA, .BtnB' ).on( 'click', function ( event ) {
const value = $( this ).prop( 'value' )
console.log( value )
alert( value )
} );
に追加
セレクターをカンマで区切れば、A またはB でも出来る
// .BtnA or .BtnB のみ
$( '.BtnA, .BtnB' ).on( 'click', function ( event ) {
const value = $( this ).prop( 'value' )
console.log( value )
alert( value )
} );
490デフォルトの名無しさん (ワッチョイ cf10-K2F7 [180.12.82.129])
2022/02/18(金) 12:23:50.32ID:aHWUA2kK0 >>483-485
やってみますありがとー
やってみますありがとー
491デフォルトの名無しさん (ブーイモ MMf3-lHx+ [210.138.208.186])
2022/02/18(金) 12:38:42.82ID:YjRRevVzM イベントのバブリングを学ぶにはいい機会(丁度よい題材)だとは思うけど、「初心者に向けて」というエクスキューズでもって今時jQueryを勧める態度には悪意に近いモノを感じる
492デフォルトの名無しさん (スッップ Sd42-qzeC [49.98.169.237])
2022/02/18(金) 21:37:34.77ID:rjrdvPAWd 今後廃れていくだけだもんな
新たに学習する必要はないわな
新たに学習する必要はないわな
493マッチ棒 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/19(土) 09:29:33.08ID:SYl7hXba0 こんにちはこのたびはお世話になります
Javaスクリプトの質問ですが
いろいろ煮詰まっておりさしあたり
変数のスコープとオブジェクトのことがよくわからないでして
変数は関数内のみのローカルありますよね
でオブジェクトも
var obj=new obj()
といったインスタンツなら変数とおなじでローカルだったりグローバルだったりするんですかな
まずは以上よろしくお願いします
Javaスクリプトの質問ですが
いろいろ煮詰まっておりさしあたり
変数のスコープとオブジェクトのことがよくわからないでして
変数は関数内のみのローカルありますよね
でオブジェクトも
var obj=new obj()
といったインスタンツなら変数とおなじでローカルだったりグローバルだったりするんですかな
まずは以上よろしくお願いします
494デフォルトの名無しさん (オッペケ Sr37-gtTr [126.133.243.36])
2022/02/19(土) 09:52:37.76ID:ApZEftHir もうvarは使うな以上
495マッチ棒 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/19(土) 12:07:18.29ID:SYl7hXba0 バーよりレッツを使うんですね承知しました。
ブラウザ画面内に表示されたDOMオブジェクトは常にグローバルなんですかね
何もかもがわからん
ブラウザ画面内に表示されたDOMオブジェクトは常にグローバルなんですかね
何もかもがわからん
496デフォルトの名無しさん (ワッチョイ cf2c-mvUX [153.136.94.40])
2022/02/19(土) 13:34:02.57ID:XlinVUCj0 window.document.body, window.document.head など、
windowオブジェクトはグローバル
windowが無くても、document.head でも同じ
window.document.head == document.head
//=> true
例えば、Pjax で、ページを作っている場合、
ページ遷移したように見えても、window に追加したオブジェクトは初期化されない。
そのまま残っている
ページの一部分しか変更されていないから。
ページをreload していないから
windowオブジェクトはグローバル
windowが無くても、document.head でも同じ
window.document.head == document.head
//=> true
例えば、Pjax で、ページを作っている場合、
ページ遷移したように見えても、window に追加したオブジェクトは初期化されない。
そのまま残っている
ページの一部分しか変更されていないから。
ページをreload していないから
497デフォルトの名無しさん (テテンテンテン MMff-+Md/ [133.106.146.196])
2022/02/19(土) 16:01:34.02ID:c/9+L37GM Pjax is なに
498デフォルトの名無しさん (ワッチョイ a333-mA98 [112.71.200.123])
2022/02/19(土) 18:28:21.70ID:fGIkG9WE0 >>491
むしろ悪意そのものでしょ
むしろ悪意そのものでしょ
499マッチ棒 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/19(土) 18:38:03.12ID:SYl7hXba0 参考書に、Javaスクリプトにはクラスの概念はない、て書いてあるんですが
もしかして情報が古い?
もしかして情報が古い?
500デフォルトの名無しさん (ワッチョイ 3f19-v1mi [123.222.1.215])
2022/02/19(土) 18:39:00.10ID:9/CFXaUW0 はい
501デフォルトの名無しさん (ブーイモ MM7f-AMcF [163.49.208.227])
2022/02/19(土) 18:43:12.48ID:QjUSXh+yM その本で勉強するのやめたら
varを使ってるのもそのせいだろうし
varを使ってるのもそのせいだろうし
502デフォルトの名無しさん (ワッチョイ 3301-lOsW [126.163.110.47])
2022/02/19(土) 19:02:00.92ID:LKw+j5240 >>499
「クラスの概念がない」は正しい
JavaScriptはプロトタイプベースでclass文は糖衣構文だからな
そういう意味で書かれているのなら正しいといえるが、書籍を持ってない人が文脈を読みとれるはずもない
書籍の正しさを保証するのはその書籍を持っている人だけ
「クラスの概念がない」は正しい
JavaScriptはプロトタイプベースでclass文は糖衣構文だからな
そういう意味で書かれているのなら正しいといえるが、書籍を持ってない人が文脈を読みとれるはずもない
書籍の正しさを保証するのはその書籍を持っている人だけ
503デフォルトの名無しさん (アウアウエー Sa9f-/VBg [111.239.156.112])
2022/02/19(土) 19:05:31.85ID:s68IJWjka まあvar使ってる時点でES15以前だから読む価値なしですね
時間の無駄なんでその本を投げ捨てろ
時間の無駄なんでその本を投げ捨てろ
504デフォルトの名無しさん (ワッチョイ 3301-lOsW [126.163.110.47])
2022/02/19(土) 19:06:29.96ID:LKw+j5240505デフォルトの名無しさん (ワッチョイ 137b-mA98 [124.246.130.6])
2022/02/19(土) 21:14:26.70ID:WPu6vt5B0 マジレス…
506マッチ棒 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/19(土) 22:06:51.12ID:SYl7hXba0 こんばんはいつもお世話なります
今日でかなり学習は進みましたありがとうございます
さっそく質問ですが
クロッパーJSという便利ライブラリを見つけて解析しております
ところが
fileReaderでダイヤログを出してjpg画像なりを読んでまずは画面にプレビューしますが、
あっ間違えたのテイで再度fileReaderして別の画像を読み込むのですが
プレビュー画面が前のまま変わらないのです
以上よろしくお願いします
今日でかなり学習は進みましたありがとうございます
さっそく質問ですが
クロッパーJSという便利ライブラリを見つけて解析しております
ところが
fileReaderでダイヤログを出してjpg画像なりを読んでまずは画面にプレビューしますが、
あっ間違えたのテイで再度fileReaderして別の画像を読み込むのですが
プレビュー画面が前のまま変わらないのです
以上よろしくお願いします
507デフォルトの名無しさん (ワッチョイ 3301-lOsW [126.163.110.47])
2022/02/19(土) 22:16:58.88ID:LKw+j5240508マッチ棒 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/19(土) 23:27:47.87ID:SYl7hXba0 クロッパーJSの公式デモページ(エマワトソンの写真のやつ)でImport Image with Blob URLsというボタンは
何度でも写真を読み直しできるんですよ
インスタンスをデストロイがカギとは思うのですが
何度でも写真を読み直しできるんですよ
インスタンスをデストロイがカギとは思うのですが
509デフォルトの名無しさん (ワッチョイ 3301-lOsW [126.163.110.47])
2022/02/19(土) 23:34:29.04ID:LKw+j5240 >>508
デモページのソースをディフってみたら?
デモページのソースをディフってみたら?
510マッチ棒 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/20(日) 01:15:27.52ID:vRC3RkLD0 クロッパーのことですけんど
なかなか敷居が高いですわ
インタネッツでもたくさんの人が2回目の読み込みをどうするか質問してますね
なかなか敷居が高いですわ
インタネッツでもたくさんの人が2回目の読み込みをどうするか質問してますね
511マッチ棒 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/20(日) 03:05:26.93ID:vRC3RkLD0 ふう、なんとかやれましたよ
大儀であつた
大儀であつた
512日記帳 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/20(日) 16:34:24.33ID:vRC3RkLD0 こんにちは今日も格闘しております
グーグルマップのリーフレットプラグインで、写真を地図に貼り付けています
複数貼った時の処理でまた壁につきあたりました
貼り付け関数で作るインスタンスが「imgovlay」なんですがその名前なら例えばimgovlay.options.cornersってやれば四つ角の座標がとれるですけんど
3枚はったあとからでは1枚目の座標が調べられんとです
これはどんな工夫したらよいのやら
以上よろしくお願いします
グーグルマップのリーフレットプラグインで、写真を地図に貼り付けています
複数貼った時の処理でまた壁につきあたりました
貼り付け関数で作るインスタンスが「imgovlay」なんですがその名前なら例えばimgovlay.options.cornersってやれば四つ角の座標がとれるですけんど
3枚はったあとからでは1枚目の座標が調べられんとです
これはどんな工夫したらよいのやら
以上よろしくお願いします
513デフォルトの名無しさん (ワッチョイ e35f-nZx7 [106.72.130.65])
2022/02/20(日) 17:20:03.63ID:xfffAjua0 日記ならそろそろ個人ブログでも作ってやったら
前にレスくれてる人は無視、相変わらず中途半端なカタカナ表記で聞きたいこともわかりにくいし書いてるコードも貼らない
一応エスパーしとくと、配列でインスタンス全部持っておくだけでは?
前にレスくれてる人は無視、相変わらず中途半端なカタカナ表記で聞きたいこともわかりにくいし書いてるコードも貼らない
一応エスパーしとくと、配列でインスタンス全部持っておくだけでは?
514日記帳 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/20(日) 17:28:08.35ID:vRC3RkLD0 ジェーンスタイルというアプリでこのスッドレを見ておるますが、タグのあるコードのコピペはできないんですよ
515デフォルトの名無しさん (ワッチョイ f35f-F+co [14.11.194.224])
2022/02/20(日) 17:31:05.62ID:7vowCzxS0516日記帳 (ワッチョイ 3301-BRhT [126.241.27.53])
2022/02/20(日) 17:50:37.16ID:vRC3RkLD0 はい承知しました
大儀であった
大儀であった
517デフォルトの名無しさん (ワッチョイ 3301-lOsW [126.163.110.47])
2022/02/20(日) 18:25:51.02ID:hgnRPi350 ID:vRC3RkLD0はネタ質問と思ってる
全く面白くないが
全く面白くないが
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 湯船は「コスパ・タイパが悪い」、「浴槽レス」住宅が若者に人気…掃除は手軽で家賃も割安 ★2 [少考さん★]
- 【芸能】トライストーン社長の小栗旬、田中圭の不倫報道に「田中が言っていることを信じたい」とのコメントを出して批判殺到 [Ailuropoda melanoleuca★]
- 【札幌】「クマがシカを食べてる」 山林で目撃 警察はパトロールを強化 [シャチ★]
- 岡野タケシ弁護士、永野芽郁と田中圭のLINE拡散した文春に「訴えるなら弁護士集めて全力で支援」「放置すれば本当に自殺者出る」★2 [muffin★]
- 【日経】千葉のZOZOマリンスタジアム、幕張メッセ駐車場に移転・新設へ [少考さん★]
- 【サッカー】鹿島―川崎に5万9574人、コロナ禍後の最多動員数に 国立競技場が熱狂 [首都圏の虎★]
- 【悲報】大馬鹿者「大阪万博に行かない奴が批判するな!」👈これ [616817505]
- 【実況】博衣こよりのえちえちクロノクロス🧪★8
- 母親「小児がんの息子の為にSwitch2を優先的に買わせて」 任天堂「駄目です🤪」
- 【ザ・ジャップ仕草】 母親「小児がんで余命宣告を受けた息子の為にSwitch2を優先的に買わせて」 任天堂「駄目です🤪」 [833348454]
- 日本人「刺青いれてる人間を社会から排除するのは当たり前」→1万いいね [834922174]
- 【悲報】日本国内では丸2週間、震度3以上の地震が発生していません。これだけ間隔が開くのは、2021年以来4年ぶりです。 [904880432]