[過去ログ] JavaScript の質問用スレッド vol.125 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
562: (ワッチョイ 8a74-+oQO [211.124.81.22]) 2023/01/07(土)11:56 ID:n88Tb37q0(1/2) AAS
>>561
いますぐ読みたまえ
563(1): (アウアウウー Sa3f-03PQ [106.154.143.205]) 2023/01/07(土)12:11 ID:Oa/pj9jla(1/2) AAS
読めたら読みます
564: (ワッチョイ 8a74-+oQO [211.124.81.22]) 2023/01/07(土)12:11 ID:n88Tb37q0(2/2) AAS
>>563
読めなくても読むのだ
565: (スプッッ Sdea-pEag [1.75.238.210]) 2023/01/07(土)15:51 ID:zzWcN8NZd(1) AAS
>>559
わざわざもう1回書いたのは自分の中ではこれが正しいという思いが捨てられなくて
賛同してくれる人が現れないかと期待してってところか
566(1): (ワッチョイ 9310-zDHW [180.12.82.129]) 2023/01/07(土)18:24 ID:2xit7B8+0(1/2) AAS
再帰関数についての質問
function test(){
処理1
test();
処理2
}
とした場合
省1
567(1): (アウアウウー Sa3f-03PQ [106.154.143.205]) 2023/01/07(土)18:46 ID:Oa/pj9jla(2/2) AAS
いいえそれは処理1次第です
568: (ワッチョイ 9310-zDHW [180.12.82.129]) 2023/01/07(土)19:05 ID:2xit7B8+0(2/2) AAS
>>567
ありがとうございます
処理1はreturnや他関数への再帰はしないものとします
569: (ワッチョイ fecf-DSRP [153.174.224.39]) 2023/01/07(土)19:11 ID:GmV1yQnL0(1) AAS
最大の再帰の深さは JavaScript エンジンによって制限されていて
その範囲内で終了条件を満たすように作る必要があります
でなければエラー終了するので、無限再帰は有り得ません
570(1): (ワッチョイ 6a7c-Or7w [43.235.241.201]) 2023/01/07(土)21:33 ID:YilgzCe20(1) AAS
そもそも永久に再帰は無理なのを理解していないのか?
それと何故再帰を使うのかという理由が全く分からん
571: (ワッチョイ aa02-DSRP [59.138.123.33]) 2023/01/08(日)01:51 ID:uPZeFpc/0(1) AAS
まあ普通は無限ループだな
わざわざ再帰にしなければいけない
理由が何かだな
572: (ワッチョイ 7b79-Jp3v [220.150.90.192]) 2023/01/08(日)01:53 ID:FOdy7Dic0(1/2) AAS
末尾再帰最適化が保証されている言語では特定条件を満たせばさもループの代替として使えるが
javascriptではそうはならなかった
以上
573: (ブーイモ MM4a-mEot [49.239.64.156]) 2023/01/08(日)01:53 ID:gpkzwVQsM(1/2) AAS
末尾最適化されてれば無限ループ可能でしょ?
ES2015で末尾最適化の仕様化されたけど適合してない実装が多いというだけ
574: (ブーイモ MM4a-mEot [49.239.64.156]) 2023/01/08(日)01:54 ID:gpkzwVQsM(2/2) AAS
ありゃ被ったか
575: (ワッチョイ 7b79-Jp3v [220.150.90.192]) 2023/01/08(日)02:24 ID:FOdy7Dic0(2/2) AAS
規格があっても準拠するかどうかは実装次第というね
ちなみにjavascriptは関数がファーストクラスでレキシカルスコープを持つためいわゆるクロージャを無意識に生成できる
クロージャがあれば末尾再帰できないからと不自由に感じることはないと思われる
576(2): (ワッチョイ 9310-zDHW [180.12.82.129]) 2023/01/08(日)17:51 ID:TObCTh0j0(1) AAS
>>570
@supportsや@mediaのネストされたcssの全プロパティ値を取得するために
再帰使いたかった
577: (ワッチョイ db01-9cRY [60.69.179.40]) 2023/01/09(月)07:24 ID:Bl4X3MiM0(1) AAS
>>576
無限にネストすることはないはずだが
578: (オッペケ Srd3-HOhV [126.208.230.4]) 2023/01/09(月)12:44 ID:mLvtK4oer(1) AAS
>>576を実現するにしても>>566にはならんと思うけども
579: (ワッチョイ 6a7c-Or7w [43.235.241.201]) 2023/01/09(月)13:34 ID:nBXeWSyT0(1) AAS
ホントになw
// aはarray
function test(a)
{
a.forEach( b => {
if (b.isArray()) {
test(b)
省4
580: (ワッチョイ 7b79-Jp3v [220.150.90.192]) 2023/01/09(月)15:00 ID:2yNmR2Eh0(1) AAS
ノードを全部舐めるみたいなトラバース系の処理はエンジンの制限とか気にするなら再帰のロジックを配列とループで作った方が安全だし
恐らく関数を呼び出すより速いから検討してみてね
581: (ワッチョイ 6305-S6ln [116.94.64.124]) 2023/01/14(土)18:28 ID:WRdKOG7o0(1/2) AAS
質問
scriptタグで指定されてるリンク先をjavascriptで変えたい
例えば. script type="text/javascript" src="A”
になってんのを
script type="text/javascript" src="B”に変えたい
replace等でやろうとしたものの上手くいかなかった
582(1): (ワッチョイ 7f7c-f6s+ [43.235.241.201]) 2023/01/14(土)20:27 ID:Ww/QFSM20(1) AAS
ちょっとググったら出てくるやろw
外部リンク:www.softel.co.jp
583: (ワッチョイ 6305-S6ln [116.94.64.124]) 2023/01/14(土)23:08 ID:WRdKOG7o0(2/2) AAS
>>582
ありがとうございます…
本当に助かりました…
584: (アウアウウー Sac7-wtyD [106.146.97.205]) 2023/01/15(日)01:42 ID:k1TuDUU1a(1) AAS
確かに以下のように、jQuery で、script タグのsrc 属性を、
a.js から、b.js へ変えても、scriptタグが再読み込みされない
$("script[src='a.js']:first").each(function (index, elem) {
$(elem).attr('src', 'b.js');
});
新たなscriptタグを追加してから、元のscriptタグを削除すれば、読み込まれるかも
585: (ワッチョイ a361-1Ylv [222.144.108.11]) 2023/01/15(日)02:01 ID:iV9MAA6y0(1/3) AAS
読み込まれたスクリプト自体はscript要素消しても消えない事に注意
586(1): (オイコラミネオ MMa7-+Atj [150.66.84.146]) 2023/01/15(日)13:53 ID:0IRxms8qM(1) AAS
ルーターのブロードステーションに電源を入れると
エッジブラウザが起動して自動的にブロードステーションのルーターのページが表示されます。
ブロードステーション関連のソフトウェアは一切インストールしていないにもかかわらずです。
これって動きだけ見ますとルータが勝手にこっちのpcを操作してるように見えるのですがどういう仕組みなんでしょうか?
ブラウザ(JavaScript)はページ内しか操作出来ない筈なんですが。
587(3): (ワッチョイ 3f3d-/16g [133.32.132.49 [上級国民]]) 2023/01/15(日)15:02 ID:yvxMece60(1/2) AAS
よろしくお願いします
【環境】Win11,Chrome
【何をしたのか】下記コードをHTMLファイルにしてchromeで読み込ませて、コンソールで見た
JSONのItemsを一個追加して、追加したageだけ書き換えたいが、両方書き換わる
【エラーメッセージ】エラーメッセージはない
【期待する結果】Itemsの2個めのageだけが40になるはず
【サンプルコード】現象を再現可能な最小限のコードを書いてください。
省25
588(1): (ワッチョイ cfcf-7DGa [153.174.224.39]) 2023/01/15(日)15:12 ID:XTiaoq8f0(1/2) AAS
>>587
そのコードで、参照がコピーされているので
data0={...json["Items"][0]}
とすればいい
589(1): (ワッチョイ a361-1Ylv [222.144.108.11]) 2023/01/15(日)15:18 ID:iV9MAA6y0(2/3) AAS
>>587
外部リンク:developer.mozilla.org
590: (ワッチョイ 3f3d-/16g [133.32.132.49 [上級国民]]) 2023/01/15(日)15:22 ID:yvxMece60(2/2) AAS
>>588,589
できましたありがとうございます。
591: (ワッチョイ cfcf-7DGa [153.174.224.39]) 2023/01/15(日)15:31 ID:XTiaoq8f0(2/2) AAS
この場合はこれで十分ですが
スプレッド構文はシャローコピーなので、
データがより複雑な構造の場合は、それなりの記述が必要です
592: (ワッチョイ a361-1Ylv [222.144.108.11]) 2023/01/15(日)15:40 ID:iV9MAA6y0(3/3) AAS
>>586
キャプティブポータルの検出機能が誤爆してるんじゃないかな
593(1): (ワッチョイ 634b-mccM [110.2.215.28 [上級国民]]) 2023/01/15(日)20:06 ID:7dUg93Xk0(1/2) AAS
mainfn()
function mainfn(){
pg1 = win1.pnl.add('group')
pg1.orientation = "row"
pg1.add("statictext", [0,0,70,23], "拡大・縮小")
rd11 = pg1.add("edittext", [0,0,40,23], 100)
pg1.add("statictext", [0,0,30,23], "%")
省16
594(1): (オッペケ Sr67-2lig [126.208.238.32]) 2023/01/15(日)20:27 ID:Vv6s9YYpr(1) AAS
関数内でvarを付けずに宣言された変数はグローバルスコープになる
var rd11 = pg1.add("edittext", [0,0,40,23], 100)
とすると関数スコープになって外部からアクセスできなくなるはず
関数内での変数宣言はvar文で行うべきで
これを「楽」と思ってしまうのは危険
595(1): (ワッチョイ 634b-mccM [110.2.215.28 [上級国民]]) 2023/01/15(日)20:53 ID:7dUg93Xk0(2/2) AAS
>>594
ありがとうございます
非常に勉強になりました
596(1): (オッペケ Sr67-2lig [126.208.230.75]) 2023/01/15(日)21:30 ID:YqyTW3mJr(1) AAS
>>595
'use strict'が効くならスクリプトの先頭行に書いとくといいよ
597(3): 502 (ワッチョイ 8301-DQ2E [60.103.69.185]) 2023/01/15(日)23:28 ID:bMctduL80(1) AAS
>>593
それAdobe Illustratorかなにかで使うソースでしょ?
どういう環境で使うソースなのかは一言書いといた方がいいよ
598(1): (アウアウウー Sac7-wtyD [106.133.104.22]) 2023/01/15(日)23:45 ID:r5uLxMWea(1) AAS
ES2015(ES6)以降は最低限、
変数宣言にはvar ではなく、let/const を付けよう
599: (ワッチョイ 8301-fAIW [60.69.179.40]) 2023/01/15(日)23:55 ID:cRCjJN100(1/3) AAS
>>597
この指摘は何度も見てるが、いつになっても改善されない
質問者にとっては直す気がない、どうでもいい問題なんだろうな…
600: (オッペケ Sr67-2lig [126.204.224.48]) 2023/01/15(日)23:55 ID:5X3ij1Yxr(1) AAS
>>598
このadobeのスクリプトはES3相当らしいのでvarを案内してるのよ
まあそもそもスレ違いだからID:7dUg93Xk0は今後adobeのフォーラムで質問するようにね
その方が我々も余計な労力を払わなくていいし君も的確な回答がもらえる
外部リンク:community.adobe.com
601: (ワッチョイ 8301-fAIW [60.69.179.40]) 2023/01/15(日)23:55 ID:cRCjJN100(2/3) AAS
>>597
この指摘は何度も見てるが、いつになっても改善されない
質問者にとっては直す気がない、どうでもいい問題なんだろうな…
602: (ワッチョイ 8301-fAIW [60.69.179.40]) 2023/01/15(日)23:57 ID:cRCjJN100(3/3) AAS
申し訳ない
投稿エラーで再投稿したら、二重投稿になってた
603: (ワッチョイ 634b-mccM [110.2.215.28 [上級国民]]) 2023/01/16(月)01:46 ID:DS9XkUYq0(1/2) AAS
>>597
すみません
次から書きます
あまりillustratorに特化したことは質問しません
604(1): (ワッチョイ 634b-mccM [110.2.215.28 [上級国民]]) 2023/01/16(月)01:51 ID:DS9XkUYq0(2/2) AAS
>>596
そういうのがあるんですね
知らなかったです
605: (オッペケ Sr67-2lig [126.208.227.98]) 2023/01/16(月)02:24 ID:SauNqkHgr(1) AAS
>>604
知った以上次からそちらにに行って質問してください
環境の説明も必要ないしillustratorに特化した質問もし放題だし良いことづくめですよ
606: (ワンミングク MM87-KwiO [114.150.17.128]) 2023/01/16(月)08:45 ID:Hbn6MJh3M(1) AAS
イラレ特化だからではなくてJavaScriptのバージョンの問題なんだけど
なんも書いてなければ最新のモダンブラウザのつもりでみんな考える
今JavaScriptのバージョンってES12くらいかね、あんまりそういう言い方しないけど
イラレ搭載のはES3なの?それも知らんけど
クッソ古いから使える文法も関数もまるで違うから環境を書けと言っているのよ
そこらへん多分知らなかったんだろうけど、それは仕方ないけど、次からは環境きちんと書いて
というかできれば以降はAdobeのフォーラムでやって
607(1): (アウアウウー Sac7-OPB1 [106.146.82.82]) 2023/01/17(火)01:44 ID:BTJjkb3Ra(1) AAS
>>587
C/C++ 以外の言語は、参照しかコピーしない・shallow copy。
実体は再作成されない
なので、deep copy するのに、参照のリンクが切れないので困る
だから、marshal とか、わざわざオブジェクトをJSON 文字列化して、
その文字列から、新しいオブジェクトを作ったりする
608: (ワッチョイ cf6f-TZIJ [121.103.1.5]) 2023/01/17(火)16:25 ID:XA7n1WWP0(1) AAS
>>607
え?
609: (JP 0H67-w88e [126.249.157.89]) 2023/01/17(火)19:01 ID:LBqNgpc6H(1) AAS
ポインタのこと?
610(2): (ワッチョイ 6310-qfBe [180.59.92.6]) 2023/01/18(水)00:05 ID:csewAuIZ0(1/4) AAS
検索アドレスに言語指定が必要になって下のスクリプトを書きました。
function Jump(){
var kekka =
"ht"+"外部リンク:www.concertzender.nl +
document.concertzender.kensaku.value +
"&lang=nl";
location.href = kekka;
省6
611: (ワッチョイ 6310-qfBe [180.59.92.6]) 2023/01/18(水)00:09 ID:csewAuIZ0(2/4) AAS
上
& です
& でも同じです
612(1): (ワッチョイ cfbb-sA4L [217.178.152.148]) 2023/01/18(水)06:35 ID:guU+fOES0(1/2) AAS
この気持ち悪いの何?
> "ht"+"tp
613: (JP 0H67-w88e [126.249.157.89]) 2023/01/18(水)07:40 ID:Eqd2U92jH(1/2) AAS
documentのpropertyにconcertzenderって標準でないっしょ?
スクリプトのどっかでなんか設定してるん?
614(1): (JP 0H67-w88e [126.249.157.89]) 2023/01/18(水)07:41 ID:Eqd2U92jH(2/2) AAS
それとエラーの内容も書き込まずにして質問っていうのもどうなの?
615(1): (ワッチョイ cf7b-lu1o [153.178.229.141]) 2023/01/18(水)08:57 ID:cgb3Ru010(1) AAS
>>612
5ch対策でしょ
616(1): (ワッチョイ 6310-qfBe [180.59.92.6]) 2023/01/18(水)10:05 ID:csewAuIZ0(3/4) AAS
>>614
すいません。単純に特殊文字ダメよという内容だったんで・・・
"&lang=nl";
"&lang=nl"; もし、"&" で始まるエンティティを含めるつもりなら、";" で終了させるべきです。
このエラーメッセージのもう一つの理由は、このテキストの直前にある「&」文字をエスケープしなかったために、
誤ってエンティティを作成してしまったことです。(機械翻訳)
自分としては&と書いて、リンクアドレスとして&を出力したいわけです・・・
617: (ワッチョイ cfbb-sA4L [217.178.152.148]) 2023/01/18(水)10:16 ID:guU+fOES0(2/2) AAS
>>615
あーそういうことか。コピペコードで悪さでもしようとしているのかと思ったけど違うみたいね
>>610
大体どの言語でもクエリ文字列を作る仕組みが用意されているのでそれを利用するのが適切です
JavaScriptならコレかな
URLSearchParams
外部リンク:developer.mozilla.org
618(2): (オッペケ Sr67-2lig [126.204.227.194]) 2023/01/18(水)11:11 ID:CwkcAAQnr(1) AAS
>>616
載せるならエラーメッセージ原文を
で、そのメッセージでググってみた?
あとエラーチェックするとって具体的にどういう操作をしたの?
619(1): (ワッチョイ a361-1Ylv [222.144.108.11]) 2023/01/18(水)12:42 ID:iQx/CEUf0(1) AAS
>>610
htmlのscript要素の中身はCDATAなので文字参照にする必要なし
もちろんinnerHTML等htmlとしてパースされるものに突っ込む場合は必要だが
htmllintなんかでエラーになるのは無視していい
620(1): (ワッチョイ 6310-qfBe [180.59.92.6]) 2023/01/18(水)13:08 ID:csewAuIZ0(4/4) AAS
>>618
エラーメッセージはその部分は&だろと言っているのですが、じゃあ&と書くと
外部リンク:www.concertzender.nl&lang=nl と出力されてエラーになり、困ったわけです・・・
>>619
無視していいんですね。ありがとうございます。
htmlでは&と書くと&になるのに、スクリプトの部分ではそうならないのですね。
621: (オッペケ Sr67-2lig [126.194.244.31]) 2023/01/18(水)13:26 ID:Okbz9NQsr(1) AAS
>>620
何も質問に答えてないよね
答える気があるならもう一度>>618を読んでほしい
622(2): (JP 0H67-w88e [126.249.157.89]) 2023/01/19(木)22:07 ID:40XBuhhWH(1) AAS
君は君の質問に反応しない人には
推し量って導こうという崇高な意識はないの?JS使いなのに?
623: (ワッチョイ 8301-fAIW [60.85.60.40]) 2023/01/20(金)00:14 ID:VzeMnjK00(1) AAS
>>622
誰からも回答してもらえない質問者は、他の人を導く存在に昇格ということか
質問に回答しないのが本人の為なのかもしれんな
624(1): (ワッチョイ 0379-sA4L [220.150.90.192]) 2023/01/20(金)01:57 ID:ptsQI5JN0(1) AAS
それよりJavaScriptをJSと略すと女子小学生しか思い浮かばないからそろそろやめたほうがいい
625: (オッペケ Sr67-2lig [126.208.227.44]) 2023/01/20(金)07:46 ID:PpNyk8UWr(1) AAS
>>622
>君は君の質問に反応しない人には
反応しない人?
質問に反応されたけど回答になってなかったからそこを指摘したんだけど
626: (ワッチョイ cfdb-f6s+ [217.178.96.73]) 2023/01/20(金)17:53 ID:zXaveivW0(1) AAS
>>624
J
627(1): (ワッチョイ bf3d-Sc6R [133.32.132.49 [上級国民]]) 2023/01/26(木)00:31 ID:c9Kzf+f60(1/2) AAS
【環境】Win11,Chromeで表示させたHTMLの中のjavascript
Windowsのフルパスのファイル名が入った変数を\でsplitしたいんだけど可能?
x_textにはJSONデータから取ってきた'D:\\00.png'が入っていて
console.log(x_text)だとD:\00.pngと表示
これをsplitすると
aaa1.html:154 Uncaught TypeError: Assignment to constant variable.
になる。
省4
628(1): (ワッチョイ 8361-4svA [222.144.108.11]) 2023/01/26(木)00:37 ID:q740ttN00(1) AAS
>>627
arr_textがconst宣言されてるだけでは?
629: (ワッチョイ bf3d-Sc6R [133.32.132.49 [上級国民]]) 2023/01/26(木)01:06 ID:c9Kzf+f60(2/2) AAS
>>628
できました。
サンクスです。
630: (アウアウウー Saa3-6TJq [106.129.156.153]) 2023/01/29(日)10:31 ID:rZA8vUyra(1) AAS
初学者質問ですいませんが、変数aが文字列あいう、かつ、変数bがundefinedでない時 というif文を書きたい時
if (a=='あいう' && (!(b === void 0))) {...
という書き方であってますか?
よりシンプルな書き方とか、より標準的な書き方ってありますでしょうか。
631(2): 502 (ワッチョイ bf01-IIfr [60.103.64.138]) 2023/01/29(日)12:00 ID:9rN3KLzS0(1) AAS
厳密不等価演算子 !==
外部リンク:developer.mozilla.org
undefined が予約語になってないから void 0、ってのは……はて、今もやるものかね
632(1): (ワッチョイ 775f-JCKB [14.8.104.32]) 2023/01/29(日)12:54 ID:eUvMCdrW0(1) AAS
if(a == 'あいう' && !b)でもよさそうな気がしなくもない
633: (オッペケ Sr27-+FJ3 [126.133.207.3]) 2023/01/29(日)15:43 ID:d0tJgmu5r(1/2) AAS
>>631
undefined は予約語ではないのでローカル変数による上書きが可能…という意味では、void 0 を使う価値はある
634(2): (アウアウウー Saa3-6TJq [106.129.157.183]) 2023/01/29(日)15:59 ID:rpOrCqGha(1) AAS
>631
ありがとうございます。リンク先確認しました。
if(a=='あいう' && b!== undefined またはvoid 0)
という感じでしょうか。
ここでb!= undefined とするとまずいのはbがnullの時だけ、という認識でいいでしょうか。
>632
ありがとうございます。bが0や空文字の時にも偽になりそうです。
635: (ワッチョイ df79-jh2e [220.150.90.192]) 2023/01/29(日)16:03 ID:R24XfIrD0(1) AAS
第一にjavascriptみたいな後付け追加仕様が混在する言語は規格よりも実装の影響力が強いから
想定環境で検証済の方法を採用すべきだと思う
コードとしては変数をtypeofで"undefined"と比較するのが恐らく理解しやすいが、
メンテナがjavascriptに十分慣れていてvoid 0のイディオムの理解を期待できるならそっちでもいい
636: (スッップ Sd72-X84U [49.98.141.203]) 2023/01/29(日)16:28 ID:MX/guDl/d(1) AAS
>>634
結局のところ
・undefinedが上書きされる可能性を考慮する必要があるのか
・bがundefined以外のfalsyな値を取りうるのか
・取る場合それぞれの値をundefinedとは区別したいのか同じとみなしたいのか
この辺次第で望ましい書き方は変わってくるわけで
637: (オッペケ Sr27-+FJ3 [126.133.207.3]) 2023/01/29(日)16:30 ID:d0tJgmu5r(2/2) AAS
>>634
型チェックも働かせるなら
if (a. === 'あいう' && b !== void 0)
と書けば良い
'あいう' も==では型チェックしない
> ここでb!= undefined とするとまずいのはbがnullの時だけ
まずいのは、undefined! == void 0 の場合
638(1): (アウアウウー Sacd-3+Au [106.128.44.107]) 2023/02/12(日)19:44 ID:zQHZ3m1Fa(1) AAS
//☆☆県(API番号☆00000)の予報を取得
let url = "外部リンク:www.jma.go.jp☆00000.json";
fetch(url)
.then(function(response) {
return response.json();
})
.then(function(weather) {
省15
639: (オッペケ Sr79-c/8M [126.179.247.114]) 2023/02/13(月)16:33 ID:6gR8iJfAr(1) AAS
バグってるので調査してください
それは質問ではなく作業依頼
640: 502 (ワッチョイ a901-d354 [60.103.78.83]) 2023/02/13(月)22:37 ID:E1kxmkHl0(1) AAS
>>638
やりたいことも伝えずに上手く動かないと言われてもなー
641: (JP 0H79-t1ev [126.249.157.89]) 2023/02/14(火)07:31 ID:NKP9M84/H(1) AAS
なぜ自身でデバッグせんのよ
642: (ワッチョイ 9279-sQVB [27.132.129.236]) 2023/02/14(火)21:18 ID:snyjWmK+0(1) AAS
そのメソッドチェーンやめれば分かるよ
エラーが起きない前提があってのメソッドチェーンだからよ
上下前次1-新書関写板覧索設栞歴
あと 360 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.028s