1 名前:デフォルトの名無しさん mailto:sage [2022/08/07(日) 15:57:40.26 ID:TS5TGpUB0.net] !extend:checked:vvvvvv:1000:512 JavaScript を自ら学ぶ人のための質問スレッドです。 >>2-5 のテンプレを読んだ上で質問してください。次スレは>>950 が>>2 の「次スレの立て方」を元に立ててください ■質問を書く上で (1) 煽り、コード制作依頼等、人を不快にさせる投稿はご遠慮下さい。公序良俗を守った応対を心がけてください。 (2) 他の人に迷惑をかけるスクリプトの質問はご遠慮ください。 (ブラクラ、[戻る], [閉じる], [クリック] の妨害、画面占有など) (3) 質問者及び議論を行う人はメール欄を空欄にし、名前にレス番を入れることを強く推奨します。回答者はなりすましを判断できませんので、なりすましが現れても自己責任となります。 (4) 常に自発的に調べる心構えを持ってください。 具体的には「自分で調べてから質問する」「回答をもらってわからない単語があればGoogle検索してみる」など。 わからない内容を代わりに調べてくれる回答者をお望みの方は余所で質問してください。 (5) 出来るだけ一般的な用語を使用してください。脳内オレオレ用語は混乱の元です。 (6) 出来るだけサンプルコードを掲示してください。言葉による説明は行き違いが生まれる場合があります。 ※必ず「問題の事象が再現されること」を確認してください。 必要な部分だけ切り出したつもりで現象が再現できていなかったケアレスミスがしばしば見られます。 (7) サンプルコードに HTML が含まれる場合は validator.w3.org/ で [Check] してみてください。 (8) 質問を具体的かつ詳細に書くと回答を得られやすいです。>>2 の質問テンプレートを活用してみてください。 (9) ライブラリ関連の質問は禁止です。関連スレにあるライブラリ質問スレで質問して下さい。 (10) 時にはあなたが望む「答え」だけでなく、「意見」などが寄せられる場合もあります。 ■前スレ JavaScript の質問用スレッド vol.124 https://mevius.5ch.net/test/read.cgi/tech/1636525464/ VIPQ2_EXTDAT: checked:vvvvvv:1000:512:: EXT was configured
809 名前:デフォルトの名無しさん mailto:sage [2023/04/24(月) 09:21:53.70 ID:U4o0cUkO0.net] >>791 ブラウザの不具合疑う前に エラーログ出て無いか確認しろ エラーログすら出てないならHTML側でちゃんと呼び出せてるか確認しろ
810 名前:デフォルトの名無しさん (ワッチョイ 2bbd-L85M [49.129.243.228]) mailto:sage [2023/04/24(月) 12:05:07.84 ID:VtgoOt7B0.net] https の証明書が古い
811 名前:デフォルトの名無しさん (ワッチョイ 6910-bhMa [180.59.92.6]) mailto:sage [2023/04/24(月) 13:08:00.47 ID:MpRTlb310.net] >>794 エラーログを見たらあっさり解決しました。 夜更けに一人で大騒ぎしてごめんなさい orz いまブラウザの開発者ツールでジャバスクリプトのエラーが見られるんだね。 びっくりした。 原因はHTMLの削除した部分にスクリプトで動かす部分があって 動かすべきものがないから次の処理に行けずエラーになっていました。 スクリプトばかり見ていてHTMLは盲点でした・・・。
812 名前:デフォルトの名無しさん mailto:sage [2023/04/24(月) 13:15:26.56 ID:3ESYAe520.net] 開発者ツール超便利だよね
813 名前:デフォルトの名無しさん mailto:sage [2023/04/24(月) 13:22:29.25 ID:sSUQNn8cr.net] まあそういうオチだろうなとは アドバイスを求めるならhtmlを修正したことは伝えるようにしてほしいところ
814 名前:デフォルトの名無しさん (JP 0Hc5-/HYv [126.249.157.89]) mailto:sage [2023/04/25(火) 18:51:33.50 ID:/Hd1NuvtH.net] 解決したようでなによりなにより
815 名前:デフォルトの名無しさん (ワッチョイ eb7d-RykB [1.33.235.4]) mailto:sage [2023/04/26(水) 19:26:29.99 ID:lfd6T/fN0.net] abehiroshi.la.coocan.jp/ この阿部さんのHPの左のフレームから「舞台出演」を取得したいんだけど、 const frame = await page.$('frame[name="left"]'); const contentFrame = await frame.contentFrame(); こんな感じでcontentFrameを取得するところまでは上手く行くんだけど、 const aElement = await contentFrame.$('body table.today tr:nth-child(8) td:nth-child(3) p a'); 次の要素を取得する段階になるとnullになってしいます どうすれば阿部さんの舞台出演を取得できますか?
816 名前:デフォルトの名無しさん (ワッチョイ d961-99Et [220.107.169.163]) mailto:sage [2023/04/26(水) 20:39:08.46 ID:UfBGheQ30.net] >>800 .todayなんてclass付いてないぞい
817 名前:デフォルトの名無しさん (JP 0Hc5-/HYv [126.249.157.89]) mailto:sage [2023/04/26(水) 22:57:11.72 ID:Q5IzIMlUH.net] それってJS?
818 名前:デフォルトの名無しさん (JP 0Hc5-/HYv [126.249.157.89]) mailto:sage [2023/04/26(水) 23:08:17.75 ID:Q5IzIMlUH.net] そもそもnullを取得してるってことは所望のオブジェクトが取得できていないってことよん?
819 名前:デフォルトの名無しさん (エムゾネ FF33-Nhf9 [49.106.174.76]) mailto:sage [2023/04/27(木) 13:47:05.09 ID:jYECG79eF.net] >>800 それ、ChromeのDevツールとかで、Elementの検索にセレクター入力してちゃんとヒットする?
820 名前:デフォルトの名無しさん (ワッチョイ 03c2-+mtg [133.155.195.156]) mailto:sage [2023/04/29(土) 00:34:06.33 ID:FZLDUbkY0.net] ['apple', 'パイナップル', 'pineapple (パイナップル)', 'りんご', 'pineapple'] を ['apple', 'パイナップル | pineapple', 'りんご'] に別名ふくめて重複削除して整形したいんですがスマートな方法ないですか
821 名前:デフォルトの名無しさん (ワッチョイ 23bd-MgCS [125.197.237.23]) mailto:sage [2023/04/29(土) 01:41:53.10 ID:bskwYySl0.net] >>805 パイナップルの表記方法はどういう仕様なの? スマートじゃない方法で実装できてるならそれを貼ってみたら?
822 名前:デフォルトの名無しさん (ワッチョイ 03c2-+mtg [133.155.195.156]) mailto:sage [2023/04/29(土) 01:58:50.79 ID:FZLDUbkY0.net] >>806 別名がカッコで後ろに付く場合があったりなかったりをまとめたいんです 今は文字列に取り出して正規表現で割ってまた戻して~って頭悪くやってます
823 名前:デフォルトの名無しさん (ワッチョイ 23bd-MgCS [125.197.237.23]) mailto:sage [2023/04/29(土) 02:08:42.66 ID:bskwYySl0.net] >>807 元の配列には、同じ値が複数、たとえば 'りんご' が何個も入ることがある? ただ何にしても、現状がどの程度頭悪いのか分からんけどそこそこ泥臭くなるんじゃないかなぁ
824 名前:デフォルトの名無しさん (ワッチョイ 03c2-+mtg [133.155.195.156]) mailto:sage [2023/04/29(土) 02:20:05.97 ID:FZLDUbkY0.net] >>808 あります
825 名前:デフォルトの名無しさん mailto:sage [2023/04/29(土) 05:52:34.96 ID:q0/EY4lO0.net] >>809 ちょっと面白そうだったので作ってみたけど、あんまりいい出来にはならなかった。 わざわざ見せるようなものじゃないんだけど、一応貼っとく。 アプローチとしては、単品アイテムまたは別名で括られた同一アイテム毎に配列実体を持たせて、重複排除しながらその実体に放り込んで最後に文字列化する。 複数の別名定義で 2つ以上の名前を括ったり、名前の登場順で連結するようにした。 https://i.imgur.com/tY8Yg78.gif
826 名前:デフォルトの名無しさん (ワッチョイ 1bbd-MgCS [119.240.43.251]) mailto:sage [2023/04/29(土) 06:04:20.63 ID:ZqMIj65v0.net] あわわ、26-32行目は整理できた const new-content = []; alias_ref[item] = alias_content.length;
827 名前:デフォルトの名無しさん (ワッチョイ e38b-fitb [211.5.157.105]) mailto:sage [2023/04/29(土) 20:12:37.30 ID:wJzxOo1h0.net] JavaScriptでタイマー処理をしています。 指定した秒数(ここでは10秒)経過したらタイマーを停止する様にしていますが タイマーが止まりません。助けてください、、、 $(document).ready(function(){ $("#id_div_test").click(function () { setInterval(TestFunction , 1000); }); }); var i_current_second = -1; function TestFunction() { i_current_second++; if( i_current_second == 10) { clearInterval(TestFunction); } }
828 名前:502 (ワッチョイ d501-nY3o [36.240.121.112]) mailto:sage [2023/04/29(土) 20:34:34.21 ID:ulzy/WI80.net] >>812 使い方間違っとるな そういうときはまずリファレンスを読め https://developer.mozilla.org/ja/docs/Web/API/setInterval
829 名前:デフォルトの名無しさん (ブーイモ MM49-3F9Y [202.214.125.164]) mailto:sage [2023/04/29(土) 20:36:30.58 ID:WiY5v75xM.net] clearIntervalの引数に入れるのはsetIntervalから帰ってくるnumber 型エラーでハマるのアホらしいしts使うか無理なら//@ts-checkをファイルの先頭に書いとけ
830 名前:デフォルトの名無しさん (ワッチョイ e38b-fitb [211.5.157.105]) mailto:sage [2023/04/29(土) 20:54:08.29 ID:wJzxOo1h0.net] >>814 わかりません。。。どう書けば良いでしょうか?
831 名前:デフォルトの名無しさん (ワッチョイ e38b-fitb [211.5.157.105]) mailto:sage [2023/04/30(日) 00:03:19.23 ID:x92s4/Ng0.net] >>814 できました!
832 名前:デフォルトの名無しさん mailto:sage [2023/05/07(日) 14:48:48.64 ID:NS1NVPz40.net] >>812 こういうのはそのまんまChatGPTに聞けばヒントなり、回答、修正案なんかも返してくれ る。 ---- この問題は、`clearInterval`に渡す引数が誤っているために発生しています。`setInterval`に渡したのは `TestFunction`関数ですが、`clearInterval`に渡すのは `setInterval`が返すタイマーIDです。このタイマーIDは `setInterval`を呼び出すと返されます。 以下は修正されたコード例です。 $(document).ready(function(){ $("#id_div_test").click(function () { var timerId = setInterval(TestFunction , 1000); // タイマーIDを保持するために変数に代入する }); }); var i_current_second = -1; function TestFunction() { i_current_second++; if( i_current_second == 10) { clearInterval(timerId); // 正しいタイマーIDを渡す } } ここでは、`timerId`変数を`setInterval`の戻り値として宣言し、`clearInterval`に渡すようにしました。これにより、タイマーが正常に停止するはずです。
833 名前:デフォルトの名無しさん mailto:sage [2023/05/08(月) 05:12:47.92 ID:AmPaXWnYM.net] >>817 ここいらんやんけ…
834 名前:デフォルトの名無しさん (ワッチョイ 52bd-F1Es [133.209.119.64]) mailto:sage [2023/05/08(月) 09:31:16.79 ID:nWGvwrRY0.net] >>817 setIntetval してるスコープの timerId を clearInterval するスコープから参照できる?
835 名前:デフォルトの名無しさん (ワッチョイ 5b7c-01SL [122.212.18.110]) mailto:sage [2023/05/08(月) 19:39:25.41 ID:0kSPeCjv0.net] エラーが出たらまた聞けば直してくれる あとほ聞き方の問題だね
836 名前:デフォルトの名無しさん (ワッチョイ 028b-KeI6 [211.5.157.105]) mailto:sage [2023/05/08(月) 22:29:23.94 ID:BI0XZhvO0.net] >>817 え?そんな事までChatGPTできるの???すごくね?? どんなシステムになってんだろ。
837 名前:デフォルトの名無しさん (オイコラミネオ MMc7-3VlF [150.66.117.113]) mailto:sage [2023/05/08(月) 23:30:02.71 ID:ieW4qdsxM.net] 条件によってスクリプトを途中で止めさせたいんだけど三項演算子じゃreturnするしないを分けるのは無理? if exitFlag return false
838 名前:デフォルトの名無しさん (ワッチョイ e2bd-F1Es [221.171.102.45]) mailto:sage [2023/05/08(月) 23:46:59.68 ID:PuDhFqQc0.net] >>822 多分無理だと思うけど、なんで if じゃいけないの?
839 名前:デフォルトの名無しさん (オイコラミネオ MMc7-3VlF [150.66.117.113]) mailto:sage [2023/05/08(月) 23:51:00.55 ID:ieW4qdsxM.net] >>823 三項演算子の中で使ってるからなんか気持ち悪い
840 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 00:52:34.88 ID:eLWpr74i0.net] f = (flag) => flag ? false : true; console.log(f(true)); console.log(f(false));
841 名前:デフォルトの名無しさん mailto:sage [2023/05/09(火) 00:52:45.73 ID:RQydgiqHd.net] >>821 ChatGPTをプログラム用途で使ったこと無いなら一度つかってみると良いよ。 ググる手間がかなり少なくなる もちろん、間違い返答の可能性もあるからそこら辺はうまく扱う必要があるけどね。 あとGitHub Copilotはもっとヤバいよ。プログラマーなら一度は使うべき
842 名前:デフォルトの名無しさん (ワッチョイ e2bd-F1Es [221.171.102.45]) mailto:sage [2023/05/09(火) 01:40:34.46 ID:r9kkpYgp0.net] OSS のソース読むときにも ChatGPT は便利だよ。 内部関数名とか聞いても何するものか教えてくれる。 この間 OpenSSL のソース読んでて助けられた。 暗号のコードなんて読んでもよくわからないしw
843 名前:デフォルトの名無しさん (ワッチョイ 028b-KeI6 [211.5.157.105]) mailto:sage [2023/05/09(火) 07:51:33.95 ID:y5YEea020.net] >>826 GitHub Copilot そんなのもあるんですね。
844 名前:デフォルトの名無しさん (ワッチョイ 028b-KeI6 [211.5.157.105]) mailto:sage [2023/05/09(火) 10:14:34.85 ID:y5YEea020.net] ChatGPTでsqlでハマった点を質問してみたんだけど ヤバイな。一瞬で分かり易く解説してくれた。 どんなプログラムを組んでるんだ。凄すぎる。
845 名前:デフォルトの名無しさん (ワッチョイ 028b-KeI6 [211.5.157.105]) mailto:sage [2023/05/09(火) 14:59:12.62 ID:y5YEea020.net] chatGPTえぐいんですけど。
846 名前:デフォルトの名無しさん mailto:sage [2023/05/18(木) 17:50:03.04 ID:An6NATd90.net] javascriptでctrl+Wでブラウザタブが落ちるのを無効にする方法はありますか?
847 名前:デフォルトの名無しさん mailto:sage [2023/05/23(火) 06:51:40.61 ID:tIBpGAYNH.net] それはJSの設定?Winの設定?
848 名前:デフォルトの名無しさん mailto:sage [2023/05/23(火) 20:39:57.19 ID:85f2/18wa.net] 最近勉強してvarの何でもありな傍若無人さに気が付いた 例えば関数実行後に初期化してもホイスティングで勝手にundefiedが代入されるからエラーにならず混乱の素、 ブロックスコープ内で使うとその生成を無視するから混乱の素 なのでプロなのにES6以降の環境で未だにvar使ってる人って新人にも劣ると思った ES6以降でEcmaから非推奨と言われてるのに未だにvar使わなければいけない理由ってある? 今後var使ってる人見たら問答無用で勉強しない人と判断しても良い?
849 名前:デフォルトの名無しさん mailto:sage [2023/05/23(火) 20:57:14.94 ID:PscArQu/0.net] キモ
850 名前:デフォルトの名無しさん [2023/05/23(火) 22:34:28.22 ID:y7+F4Fx6M.net] >>833 >例えば関数実行後に初期化してもホイスティングで勝手にundefiedが代入される これいろいろ間違ってる >未だにvar使わなければいけない理由ってある? REPLで繰り返しコードブロックを実行したい場合なんかにvar使う あとはブラウザ以外の環境でES3しか動かない環境とかね >今後var使ってる人見たら問答無用で勉強しない人と判断しても良い? 良いと思うけど君もそっち側に片足突っ込んでるから気をつけて
851 名前:デフォルトの名無しさん mailto:sage [2023/05/24(水) 10:07:05.19 ID:qaFXRxUx0.net] スコープの基本だね レキシカルなのかパラメーターなのか DOMをいじるとみんな参照になるし変数大切ね
852 名前:デフォルトの名無しさん mailto:sage [2023/05/24(水) 10:45:52.94 ID:R9+x876F0.net] 匿名イベントを削除する方法って無い? ググりまくっても全く見当たらんから仕方ないのでElement.prototype.addEventListenerフックしてフィルタしてるんだけど非常に遠回りな事してる気がしてならない
853 名前:デフォルトの名無しさん [2023/05/24(水) 11:04:01.62 ID:CrZEaXEyM.net] >>837 イベントリスナーへの参照を保持してないと removeEventListenerは使えない あとはAbortSignalを使う方法がある MDNのaddEventListener辺りに全部書いてる
854 名前:デフォルトの名無しさん mailto:sage [2023/05/25(木) 06:53:07.70 ID:djzVD0JU0.net] くそ素人で申し訳ない ブックマークレットでCookieを編集する時に有効期限も同時に編集したいのだけれど どうしたらいいのだろうか 元々は javascript:document.cookie=%22ipb_member_id=〇〇%22;document.cookie=%22ipb_pass_hash=〇〇%22; って感じなのだけれど1日くらいしたらすぐ消えてしまう
855 名前:デフォルトの名無しさん (スップ Sd5a-9ehv [49.96.239.55]) mailto:sage [2023/05/25(木) 11:10:49.64 ID:vvIauVZOd.net] どっかのRFCに載ってるはず
856 名前:デフォルトの名無しさん mailto:sage [2023/05/27(土) 14:04:26.57 ID:MkhutBump.net] >>839 そいつは有効期限も一緒に設定しなきゃならんな。 javascript:(function(){ var date = new Date(); date.setDate(date.getDate() + 30); // 30日後に設定 document.cookie = "ipb_member_id=〇〇; expires=" + date.toUTCString() + "; path=/"; document.cookie = "ipb_pass_hash=〇〇; expires=" + date.toUTCString() + "; path=/"; })(); こんな感じでやってみ。 これでipb_member_idとipb_pass_hashが 30日間有効になるぜ。 ただし、ブラウザの設定やCookieの設定によってはJavaScriptから触れないこともあるから、 その辺は自己責任でな。
857 名前:デフォルトの名無しさん [2023/05/28(日) 15:24:03.43 ID:n14WZ+eY0.net] documentのinnerHTMLやtextContentの書き換えをしたとき、ブラウザのDOMの計算(?)や再描画(?)は変更があった部分のみか、ページ全体で行われるののどちらでしょうか?
858 名前:デフォルトの名無しさん mailto:sage [2023/05/28(日) 23:28:10.35 ID:8mVMxOyu0.net] >>841 ありがとうまじ助かった
859 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 06:35:55.98 ID:eVNfBOW80.net] CookieってPHPみたいなサーバーサイドから設定するのとJSから設定するのどっちが良いんかね? 同僚から受け継いだシステムはPHPでやってたが
860 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 07:03:02.74 ID:nuFuFtG60.net] HttpOnlyの存在考えるとサーバーサイド一択じゃね?
861 名前:デフォルトの名無しさん mailto:sage [2023/05/29(月) 08:05:53.64 ID:7kZHwtIo0.net] ステートレスな通信を補助するものだから、処理の起点側でつけると良い ただ、一般的にはサーバサイドになると思うよ
862 名前:デフォルトの名無しさん (ワッチョイ 5f4b-HhYS [110.2.215.28 [上級国民]]) mailto:sage [2023/06/19(月) 13:57:37.11 ID:iYcFBKEZ0.net] if ((a == b && c != d) || (e == f && g != h)){ alert ("正解"); } こういうコードの書き方は出来ますか? 二重括弧の使い方は正しいでしょうか?
863 名前:デフォルトの名無しさん (ワッチョイ 5f4b-HhYS [110.2.215.28 [上級国民]]) mailto:sage [2023/06/19(月) 14:42:31.77 ID:iYcFBKEZ0.net] ちょっと調べてたんですが、こうでしょうか? if (((a == b) && (c != d)) || ((e == f) && (g != h))){ alert ("正解"); } 「a == bとc != dの条件が両方ともtrue」か「e == fとg != hの条件が両方ともtrue」なら"正解"と警告を表示したいのですが… 三重括弧なんてあります?
864 名前:デフォルトの名無しさん (ワッチョイ ff7b-0fSR [153.185.178.93]) mailto:sage [2023/06/19(月) 14:49:42.42 ID:G503Uwj70.net] >>847 で大丈夫やろ。 なんで試さんの?
865 名前:デフォルトの名無しさん (ワッチョイ ff61-gPkm [153.171.212.140]) mailto:sage [2023/06/19(月) 14:54:44.66 ID:Glrukv1f0.net] 演算子優先度の理解が追い付いて無いなら好きなだけ括弧使えばいい
866 名前:デフォルトの名無しさん (オッペケ Sr33-vDmN [126.157.241.160]) mailto:sage [2023/06/19(月) 14:58:41.52 ID:3rS08iXar.net] 何重カッコでもいけるけど演算子やカッコが増えると可読性が落ちて条件式を読み解くのが辛くなる コードは長くなっても条件式をいくつかに分割して変数に入れた方が読みやすくなるよ const x = (a == b) && (c != d) const y = (e == f) && (g != h) if(x || y){ alert ("正解"); } とか
867 名前:デフォルトの名無しさん (ワッチョイ 5f4b-HhYS [110.2.215.28 [上級国民]]) mailto:sage [2023/06/19(月) 15:02:17.21 ID:iYcFBKEZ0.net] 皆さん、ありがとうございます 変数に入れるのがいいですね やってみます
868 名前:デフォルトの名無しさん (アウアウウー Sa23-QBJ2 [106.130.41.210]) mailto:sage [2023/06/19(月) 23:22:27.82 ID:xNSaH23va.net] イテレータ、Map、Setがややこしくて😩なんだけど実務で使う? 一応理解したけどカスタムイテレータ作ってそれをオブジェクトに追加してfor...ofなんて無理だな プログラマーならバリバリ使うのかな?それとも知識として仕組み知っとくだけ?
869 名前:デフォルトの名無しさん (オッペケ Sr33-vDmN [126.205.219.139]) mailto:sage [2023/06/20(火) 13:18:59.52 ID:es0ShzRur.net] Mapはキーと値の組み合わせのコレクション Setは重複のない値のコレクション どちらも実務で出番はある イテレータは中身を1個ずつ取り出せるものの総称 カスタムイテレータに関してはmdnもおすすめのジェネレータ関数を覚えておけばいいかと バリバリではないにしてもここぞというときに役に立つ
870 名前:デフォルトの名無しさん (ワッチョイ ffda-ZcId [223.216.178.53]) mailto:sage [2023/06/21(水) 18:20:14.61 ID:He5qrAkL0.net] tableタグのtrをjqueryかjavascriptでアニメーションアコーディオンがうまくアニメーションしないんだけど slideToggleで開発ツールではheightの数字は変化しているんだけど・・ もしかしてtrにheightという概念が無いから? <tr class=name><td>名前1</td></tr> <tr class=detail><td>中身1</td></tr> <tr class=name><td>名前2</td></tr> <tr class=detail><td>中身2</td></tr> ・・・
871 名前:デフォルトの名無しさん (ワッチョイ 7d4b-Hjce [110.2.215.28 [上級国民]]) mailto:sage [2023/06/26(月) 12:08:05.73 ID:QXVTwCFE0.net] 変数って定義する前はundefinedが入ってるんでしょうか?
872 名前:デフォルトの名無しさん (ワッチョイ 1501-WolJ [60.109.218.97]) mailto:sage [2023/06/26(月) 20:02:32.96 ID:nZR6QJ/D0.net] >>856 変数定義前は変数がない 変数定義時に値を代入しなければundefinedで初期化される
873 名前:デフォルトの名無しさん (ワッチョイ 7d4b-Hjce [110.2.215.28 [上級国民]]) mailto:sage [2023/06/26(月) 21:13:06.03 ID:QXVTwCFE0.net] >>857 ありがとうございます。
874 名前:デフォルトの名無しさん (アウアウウー Sab9-cUyJ [106.130.49.224]) mailto:sage [2023/06/29(木) 21:35:42.23 ID:I06beN9ya.net] Promiseメソッドなんなの独自ルール多すぎでしょ。もはや別言語に感じる。これよく使用される?
875 名前:デフォルトの名無しさん (ワッチョイ 1a00-KjOb [221.118.182.138 [上級国民]]) mailto:sage [2023/06/29(木) 22:34:31.96 ID:mZg1DRHQ0.net] Promise周りは最初は取っつきにくいけど、凄く使いやすく作られてるし、物凄くよく使うよ。
876 名前:デフォルトの名無しさん (ワッチョイ 1d5f-momQ [14.8.104.32]) mailto:sage [2023/06/29(木) 23:09:38.14 ID:OBXN/r9b0.net] async awaitでしかfetchをかけない自分と、thenでしかfetchを書けない前任者のせめぎあい xhrはなぜか知らんがもう時代じゃないらしいし
877 名前:デフォルトの名無しさん (アウアウウー Sab9-Br7/ [106.128.36.203]) [2023/06/30(金) 10:14:20.96 ID:Lj29KtNna.net] 的外れな質問だったら申し訳ありません… クラスAが長くなってしまったこと(1500行くらい)、類似クラスBとある程度共通化できそうな部分があったので関数Cとして 別ファイルに切りだそうと思いました。 その際、関数CからAの複数のメンバ変数/メソッド(Bも同じ名前の変数/メソッドを持っている)を利用したいのですが、 一つ一つ引数で渡していくと記述が煩雑だし、仕様も変わる可能性があります。 そこで、Aのインスタンスから関数Cにthisを引数として渡すようにして、関数Cからは仮引数this.メンバ変数 などのようにして自由にAのメンバにアクセスできるようにしました。 以上のやり方で、動作はしているようですが、なんか良くないやり方の様な気もしています。 上記のやり方は一般的な方法でしょうか。何かデメリットはありますでしょうか。
878 名前:デフォルトの名無しさん (ワッチョイ 7691-pVx5 [153.223.3.108]) mailto:sage [2023/06/30(金) 10:55:58.80 ID:qu6f9mWQ0.net] クラスAたBの同名の変数と関数をBaseクラスにしてAとBに継承すれば同名の変数関数を持ってることが保証できてうっかり名前変えてしまったとかのバグ防げるんじゃない?インターフェースみたいに それから引数じゃなくてbind使えば関数C内でthisを自然な感じで使えるとか
879 名前:デフォルトの名無しさん (アウアウウー Sab9-Br7/ [106.128.39.112]) [2023/06/30(金) 13:05:23.88 ID:2BLecjKja.net] 有り難うございます。 デメリットとしては後でA~Cをいじった時にバグの温床になりやすいこと、くらいの認識で良いんですかね。 基底クラスを継承するかたちにすることも考えたいと思います。 確かにbind/callを使った方が、動作は同じでよりシンプルな気がしてきました。
880 名前:デフォルトの名無しさん (アウアウウー Sa47-NFBa [106.146.70.58]) mailto:sage [2023/07/01(土) 04:46:01.59 ID:nMEzWNF9a.net] is_a, has_a 継承か包含か、古典的な質問
881 名前:デフォルトの名無しさん (アウアウウー Sa47-ctHD [106.155.8.134]) mailto:sage [2023/07/01(土) 19:38:17.78 ID:hPyQUT1Ya.net] javascript: if((result = prompt("input formula string","")) == "") alert("no formula string"); else alert(eval(result));
882 名前:デフォルトの名無しさん (ワッチョイ 5a00-PRVu [221.118.182.138 [上級国民]]) mailto:sage [2023/07/01(土) 22:48:30.73 ID:WfKHfAvE0.net] なんつー邪悪なコード
883 名前:デフォルトの名無しさん (ワッチョイ 5b4b-nuDV [110.2.215.28 [上級国民]]) mailto:sage [2023/07/05(水) 21:30:37.79 ID:74hfvDDi0.net] (function(){ ~ })(); こういう書き方をしてるコードがあったんですけど、これは実行も含めた関数の書き方でしょうか? 最初の(と最後の)()の意味がわかりません
884 名前:デフォルトの名無しさん (ワッチョイ e301-cWjJ [60.109.218.97]) mailto:sage [2023/07/06(木) 00:31:51.01 ID:IKcM4kIN0.net] >>868 即時関数 ()は関数宣言ではなく、関数式として実行するため
885 名前:デフォルトの名無しさん (ワッチョイ 5b4b-nuDV [110.2.215.28 [上級国民]]) mailto:sage [2023/07/06(木) 01:40:00.57 ID:vc4JCbkY0.net] >>869 ありがとうございます よくわかりました
886 名前:デフォルトの名無しさん (ワッチョイ 7679-p0MK [175.105.104.184]) mailto:sage [2023/07/07(金) 13:17:53.80 ID:tybFBPle0.net] なるべく自分で考えたキモイ名前は晒したくないからな?
887 名前:デフォルトの名無しさん (ワッチョイ a15f-eaRz [14.13.136.34]) [2023/07/08(土) 18:01:12.76 ID:0tWDp4eO0.net] 今ホームページを制作しているのですが教えて頂きたいです。 下記内容のコードの書き方がわかりません。 5枚の画像があるのですが、全部では無く一旦一枚目のみ表示させたいです。 次に各画像を説明する文字があります。その文字にマウスカーソルを合わせると、その文字にあった画像に2枚目3枚目と切り替わるようにしたいと思っています。 初心者すぎるので例としてコードを作って頂ければ見ながら調整したく思っています。 どなたかお教え頂けませんでしょうか。
888 名前:デフォルトの名無しさん (スプッッ Sd73-mu37 [1.75.238.73]) mailto:sage [2023/07/08(土) 20:53:43.61 ID:S1M2Nutrd.net] >>872 それはもう質問ではない
889 名前:デフォルトの名無しさん (ワッチョイ a15f-vDrU [14.8.104.32]) mailto:sage [2023/07/08(土) 21:24:42.99 ID:DhofVjWT0.net] ChatGPTに聴け
890 名前:デフォルトの名無しさん (ワッチョイ d101-Ud/M [60.105.201.125]) mailto:sage [2023/07/08(土) 23:32:58.73 ID:EFUbRXYX0.net] >>872 質問にするなら>>1-3 を読もう
891 名前:デフォルトの名無しさん (アウアウウー Sa55-knyK [106.146.116.188]) mailto:sage [2023/07/09(日) 01:18:13.12 ID:YP8p84HTa.net] よくある、スライダーでしょ? jQuery でもあるでしょ Bootstrap のCarousel (カルーセル) https://getbootstrap.jp/docs/5.0/components/carousel/
892 名前:デフォルトの名無しさん (ワッチョイ a15f-eaRz [14.13.136.34]) [2023/07/09(日) 01:44:11.98 ID://wYUerL0.net] なんか色々ルールがあるんですね 諦めて勉強します ありがとうございます
893 名前:874 (アウアウウー Sa55-knyK [106.146.114.68]) mailto:sage [2023/07/09(日) 19:52:50.68 ID:gl6FDMI+a.net] jQuery slider Bootstrap Carousel などで検索すれば、一杯ある 一杯あるけど、難しいから自作する人はいない。 皆、jQueryUI やBootstrap のCarousel などの既製品を使う
894 名前:デフォルトの名無しさん (ワッチョイ 9300-Yt8B [221.118.182.138 [上級国民]]) mailto:sage [2023/07/09(日) 21:16:30.84 ID:VzLiONyC0.net] え、そんな難しい要素無いよ
895 名前:デフォルトの名無しさん (スップ Sd9f-asTj [49.97.111.88]) mailto:sage [2023/07/17(月) 23:23:58.12 ID:XzfBWjood.net] フォームフィールドが定義されたPDFファイルがすでにあって、ブラウザ上のJavascriptでWebフォームに入力されたテキストをPDF側のフィールドに反映させてダウンロードすることができるpdfライブラリってあまりすか? 使い方のイメージとしては、たとえばPDF上に名前を入力する箇所がいくつかあるけど、ユーザーは単にweb上で普通のinputフォームを入力してsubmitすると名前が入力済みのPDFファイルをダウンロードできる、という感じです。 pdfmake等いくつかライブラリは見たのですが、白紙ベースでPDF作る例しか見あたらなくて(テンプレートは画像背景で切り替え等)、直接PDFフォームを扱えるものは無いかなと。
896 名前:デフォルトの名無しさん (アウアウウー Sac5-HZc/ [106.130.137.152]) mailto:sage [2023/07/29(土) 00:54:23.66 ID:s0ko+FdFa.net] プログラミング全く知らない状態からやっとJavaScript一通り学びました かなり難しかったです。でもJavaScriptは比較的簡単な言語なんですよね? ES6以降のJavaScriptでもやっぱり簡単なんですか? それとES6で大規模アップデート合った時は絶望しましたか? 勉強していて苦しんだのがスコープ、this、反復処理の背景(iteratorの動き、yieldは何をしてるか)、非同期処理(Promise、then、async)、その他様々なメソッド、静的メソッド、、、 これら全てES6から導入されましたよね?絶望しませんでしたか? 例えば私がもしES5までのJavaScriptに慣れ親しんでいてES6のアップデートに触れたら絶対絶望してました。概要見ても「?????」となってたはずです プログラミングに向いてる人はこんな大規模アップデートがあるとワクワクする人なのでしょうか? 絶望せず、「何ができるようになったんだろう!凄い!こんな事やあんな事が出来る!」みたいな人も居ましたか?
897 名前:デフォルトの名無しさん (ワッチョイ c200-pYoK [221.118.182.138 [上級国民]]) mailto:sage [2023/07/29(土) 08:26:35.15 ID:wB1gRUiQ0.net] ES5までは貧弱だったのでそりゃもう大歓喜よ。 それと現代のJavaScript(を使いこなすの)はもはや簡単な部類じゃないように思う。
898 名前:デフォルトの名無しさん (オッペケ Sr91-xmUq [126.254.133.95]) mailto:sage [2023/07/29(土) 09:45:27.72 ID:ZQ+RMRi1r.net] 苦しみとか絶望とか>>881 は言語の習得を学校の勉強と同じようなものとしか捉えてないフシがある 日本史の勉強範囲が大政奉還までだと思ったら第二次大戦までだった!みたいな感覚 新しく覚えたことは実際のプログラミングで活かせるんだという意識が全く感じられない
899 名前:デフォルトの名無しさん (アウアウウー Sac5-HZc/ [106.130.201.25]) mailto:sage [2023/07/29(土) 14:21:53.16 ID:LQ1ElLyya.net] >>882 >>883 とにかく理解するのに必死で苦しみました。jJavaScriptが簡単とは全く思いませんでした
900 名前:デフォルトの名無しさん (アウアウウー Sac5-HZc/ [106.130.201.25]) mailto:sage [2023/07/29(土) 14:27:58.50 ID:LQ1ElLyya.net] try,catch,finally文の存在異議が分からなかったけど、今さっき急にasync/awaitのエラーハンドリングに向いてるのに気が付きました つまりthen,catchのPromiseチェーンをより楽に書けるのに今さっき気が付きました。こんな感じで上手くいかないですね
901 名前:デフォルトの名無しさん (ワッチョイ c200-pYoK [221.118.182.138 [上級国民]]) mailto:sage [2023/07/29(土) 15:03:53.70 ID:wB1gRUiQ0.net] .then().catch()の方が綺麗に書けて(副作用的な意味で)好きだなぁ
902 名前:デフォルトの名無しさん (ワッチョイ c6bd-g4Mn [119.240.43.146]) mailto:sage [2023/07/30(日) 02:24:04.00 ID:oecUblNe0.net] >>881 言語として簡単かっていうとどうだろうね。 Webブラウザがあれば動かせる上にデバッグ環境まで付いてるから、誰でもすぐ始められるし、作ったものをどこででも動かしてもらえるという手軽さはあると思うけど。
903 名前:デフォルトの名無しさん (ワッチョイ 095f-kJnY [14.8.104.32]) mailto:sage [2023/07/30(日) 14:24:24.68 ID:av5XIWe10.net] 自分はプロトタイプ型オブジェクト指向から入ったから気にならないけどクラス型でプログラム書いてた人は違和感凄いんだろうな あとクロスブラウザ対応しなきゃいけなかった人達もJSはしんどかったんだろうなと想像
904 名前:デフォルトの名無しさん (ワッチョイ e94b-C8We [110.2.215.28 [上級国民]]) mailto:sage [2023/08/04(金) 01:16:43.56 ID:LzfYm8xL0.net] rd41 = ""; alert (rd41); これで「rd41は未定義です」ってエラーは出ますか? alert(rd41); これだけだと「rd41は未定義です」ってエラーが出ますよね 実際のコードはalertでは無いのですが、rd41に無を代入して何も表示させたくないのです rd41 = null; だと、nullと表示されてしまいます
905 名前:デフォルトの名無しさん (ワッチョイ e94b-C8We [110.2.215.28 [上級国民]]) mailto:sage [2023/08/04(金) 01:36:14.69 ID:LzfYm8xL0.net] chatGPTに質問したら答えが返ってきた https://i.imgur.com/5NbJI6w.jpg
906 名前:デフォルトの名無しさん (ワッチョイ febd-FWk2 [49.129.241.111]) mailto:sage [2023/08/04(金) 09:00:08.06 ID:2wk44tWe0.net] >>889 delete を調べてみるとどうだろう。 やりたいことによってはブロックスコープで足りるかも。 個人的にはブロックスコープを活用して、変数を小まめに狭い範囲に閉じ込める書き方をおすすめしたい。
907 名前:デフォルトの名無しさん (ワッチョイ a101-CknR [60.89.4.138]) mailto:sage [2023/08/04(金) 09:14:51.09 ID:TEvOuQNU0.net] >>889 ECMAScriptに「未定義」というエラーはない Strict Modeで実行すれば、両コードともにReferenceErrorになるだろう https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Strict_mode https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/ReferenceError
908 名前:デフォルトの名無しさん (オッペケ Sr91-q/g9 [126.254.212.243]) mailto:sage [2023/08/04(金) 09:37:58.66 ID:EZ9l15Zsr.net] >>889 >rd41 = ""; >alert (rd41); >これで「rd41は未定義です」ってエラーは出ますか? なんで試してみないの?
909 名前:デフォルトの名無しさん [2023/08/11(金) 14:55:53.43 ID:+rPtXLG2m] JÅLだのAΝАた゛
910 名前:のクソアヰ又ト゛ゥだの洒飲んて゛業務してるクサヰマ一クだのコ゛キブリフライヤ‐だのジェットクサ‐だのテ囗リストに 天下り賄賂癒着して都心まて゛数珠つなぎて゛騒音に温室効果カ゛スにコ囗ナにとまき散らさせて,気候変動させて海水温上昇させて. 土砂崩れに洪水、暴風,猛暑.大雪にと災害連發させて地球破壞して、静音が生命線の知的産業に威カ業務妨害して 知的産業を根絶やしにして.個人情報漏洩に不正送金にシステム障害まみれのポンコツ後進国に陥れた自民公明た゛か゛, どうやら騒音は,知的産業のみならす゛,音楽や執筆などの創作活動にも甚大な影響を及ほ゛していることか゛明らかになってきたな 技術全敗で海外に売れるものはア二メくらいとか言われていたのか゛、それすら死に体になって曰本終了にも程があるだろ 日銀に金刷らせて賄賂癒着してる資本家階級と大企業を高額総ナマポ化して.コ゛ミ企業た゛らけをゴミ企業10О%に陥れたわけだが 民主主義化しようと立ち上がった山上大先生と,それを國葬によって消し去り腐敗國家を存続させんとする自民公明の攻防キモ杉た゛ろ 創価学会員は,何百万人も殺傷して損害を与えて私腹を肥やし続けて逮捕者まて゛出てる世界最悪の殺人腐敗組織公明党を 池田センセ一が口をきけて容認するとか本氣で思ってるとしたら侮辱にもほどがあるぞ! httPs://i、imgur.соm/hnli1ga.jpeg [] [ここ壊れてます]
911 名前:デフォルトの名無しさん (ワッチョイ f233-yhDR [101.141.60.18]) mailto:sage [2023/08/14(月) 23:07:53.97 ID:QNJSoVjn0.net] 時報みたいなのを作成中でそのhtmlのページさえ開いておけば 9時、12時、18時(プリセットとかは無く固定)に特定のwavサウンドファイルがaudioElement.play() で再生される用にしています (タブが非アクティブだとなんか動かない時があったのでwindow.openで表示させてます) chromeのポリシーみたいなのでユーザーが明示的なアクションをしないと音声の自動再生はされないみたいで それの良い回避策ってありますか? 実用性考えると携帯のアラームが百倍使いやすいけど 自分用にチープなのを作って遊んでるんだけど解決策が思いつかなくて・・・
912 名前:デフォルトの名無しさん (ワッチョイ 1f4b-uBRt [110.2.215.28 [上級国民]]) mailto:sage [2023/08/15(火) 01:53:58.77 ID:Efj8IW440.net] >>895 そういう質問はchatGTP得意や 聞いてみれば
913 名前:デフォルトの名無しさん (ワッチョイ 7e63-SF+K [153.218.139.115]) [2023/08/21(月) 00:13:21.70 ID:v7lFaH3H0.net] 【環境】Windows 11, Chrome最新版 【何をしたのか】PHPで動的に出力されたテキストに replace (new RegExp) 【エラーメッセージ】コンソールには何も出ません 【期待する結果】ページ内に複数生成される動的クラス内テキストを置換したい 【サンプルコード】 <p class="tx-body">おはようございます*2023.08.15</p><span clas="tx-date">0000</span> <p class="tx-body">ごきげんよう*2023.08.20</p><span clas="tx-date">0000</span> ・ ・ tx-dateクラスの中身をtx-bodyの*以降の文字列に置き換えたく、以下を<body>の後半に書きましたが期待する置換変化が起きません、エラーも出ません、 根本的なところわかっていないのだと思うので恐縮ですがお手上げ状態です window.addEventListener('load', function() { const ItemList = document.getElementsByClassName("tx-body"); const ItemDate = document.getElementsByClassName("x-date"); for(i=0; i<ItemList.length; i++) { var tBody = ItemList.item(i).textContent; var tDate = ItemDate.item(i).textContent; var replaceDate = tBody .split("*")[1]; tDate = tDate.replace(new RegExp(replaceDate,'g'),''); } }) 以上ご指導よろしくおねがします
914 名前:デフォルトの名無しさん (スッップ Sdca-jTH6 [49.98.168.137]) mailto:sage [2023/08/21(月) 11:40:28.26 ID:cB09UaOod.net] >>897 まずconsole.log()や開発者ツールを使って自分の書いたコードがどこまで想定通りに動いてるか確認してみよう
915 名前:デフォルトの名無しさん (ワッチョイ 534b-ubuk [110.2.215.28 [上級国民]]) mailto:sage [2023/08/21(月) 11:51:22.81 ID:7Ts4WfMN0.net] >>897 コードを見る限り、置換を行うためのコードは一見正しく見えますが、複数の潜在的な問題が考えられます。まず、コード内のいくつかのポイントをチェックしてみましょう。 1. **クラス名のスペル**: `tx-date` クラスが正しく `x-date` クラスになっているか確認してください。 2. **期待する置換変化の確認**: 期待する置換変化がどのようなものか確認してみてください。コード内で `tDate` の内容を `console.log()` を使って出力し、実際の値が正しいか確認できます。 3. **変数 `replaceDate` の設定**: `tBody.split("*")[1]` の部分で、正しい位置に `*` が存在しているか確認してください。`split()` メソッドは対象の文字列を指定の文字で区切って配列にしますが、もし `*` が存在しない場合、期待通りの結果が得られない可能性があります。 4. **置換操作の適用**: `tDate` に対して行った置換操作が、実際のDOM要素に反映されていない可能性があります。`tDate` の内容を変更した後、対応するDOM要素の内容を更新するコードが不足しているようです。 これらのチェックポイントを確認した上で、コードを修正するか、デバッグすることをお勧めします。また、具体的なサンプルHTMLコードや置換の例を提供していただければ、より具体的なアドバイスを提供できるかもしれません。
916 名前:デフォルトの名無しさん (スッップ Sdca-jTH6 [49.98.168.137]) mailto:sage [2023/08/21(月) 12:25:10.86 ID:cB09UaOod.net] このワッチョイ **4bは質問スレにchatGPTの回答貼るだけのボットみたいなもんだからスルー推奨 NG入れといてもいい
917 名前:デフォルトの名無しさん (アウアウウー Sa7f-7wIC [106.133.165.90]) mailto:sage [2023/08/22(火) 23:04:06.56 ID:rPfWctd8a.net] 2か所とも、clas="tx-date" になっている! class でしょ
918 名前:898 (アウアウウー Sa7f-7wIC [106.133.165.90]) mailto:sage [2023/08/22(火) 23:12:31.83 ID:rPfWctd8a.net] >const ItemDate = document.getElementsByClassName("x-date"); x-date は、tx-date じゃないの?
919 名前:898 (アウアウウー Sa7f-7wIC [106.133.165.90]) mailto:sage [2023/08/23(水) 00:10:28.94 ID:B78POXf5a.net] 一旦、要素 tDate_elem を取得しておいてから、 その textContent に値を設定する。 つまり更新 const tBody = ItemList.item(i).textContent; const tDate_elem = ItemDate.item(i) // 要素 const tDate = tDate_elem.textContent; console.log( tDate ); //=> 0000 const replaceDate = tBody.split("*")[1]; console.log( replaceDate ); //=> 2023.08.15 tDate_elem.textContent = replaceDate; // 設定 表示 おはようございます*2023.08.15 2023.08.15 ごきげんよう*2023.08.20 2023.08.20
920 名前:デフォルトの名無しさん (スプッッ Sd6a-jTH6 [1.75.209.193]) mailto:sage [2023/08/23(水) 10:39:07.30 ID:oZ78uDd8d.net] >>903 それはもう質問に答えたというよりデバッグと修正を代行したのであってこのスレの主旨には合わない おそらく他の人もそういう認識だからこの件に口を出さないんだと思うよ
921 名前:898 (アウアウウー Sa7f-7wIC [106.146.101.215]) mailto:sage [2023/08/23(水) 19:53:27.23 ID:ktllvUDta.net] jQuery なら、もっと簡単 $( function ( ) { $('.tx-body').each(function (index, elem) { const tx_body = $(elem); console.log(index + ': ' + tx_body.text()); const replaceDate = tx_body.text().split("*")[1]; console.log(replaceDate); // tx_body 要素の次の兄弟で、tx-date クラスがある要素。絞り込み const tx_date = tx_body.next('.tx-date'); console.log(index + ': ' + tx_date.text()); console.log('tx_date.length: ' + tx_date.length); // 0 or 1 // 該当する要素があれば設定する。つまり更新 if (tx_date.length === 1) { tx_date.text(replaceDate); } }); } );
922 名前:デフォルトの名無しさん (アウアウエー Sa22-NwC7 [111.239.174.98]) [2023/08/25(金) 21:08:52.47 ID:+90wXQAMa.net] chrome拡張どう作ったらいいのでしょう? こんな感じではリダイレクトが連続してしまってだめでした urlsのフィルターの仕方、もしくはリダイレクトをせずにそのURLにアクセスする方法が分かれば解決できるとは思うのですが・・・ //aaa.com/xxxx/ へのアクセスを aaa.com/abc/xxx/ へ変換したい (以下は動作しない) chrome.webRequest.onBeforeRequest.addListener( function(details) { if (details.url.match(/abc/)) { return {}; //←ここを書き換える方法が分かればいける } else { details.url = details.url.replace(/aaa.com/g,"aaa.com/abc"); return {redirectUrl: details.url }; } }, { urls: [ "*://aaa.com/*/" ], //←ここを書き換える方法が分かればいける }, ["blocking"] );
923 名前:デフォルトの名無しさん (アウアウウー Sa47-rTQJ [106.146.72.134]) mailto:sage [2023/08/26(土) 04:11:22.52 ID:wsJDYSi/a.net] 「chrome.webRequest.onBeforeRequest」で検索! webRequest https://developer.mozilla.org/ja/docs/Mozilla/Add-ons/WebExtensions/API/webRequest
924 名前:デフォルトの名無しさん (アウアウエー Sa5f-/No0 [111.239.174.98]) mailto:sage [2023/08/26(土) 12:48:58.33 ID:mvAl1l0Ba.net] そこ見てどうすればいいのか分からないからここに来た・・・
925 名前:デフォルトの名無しさん (スッップ Sd9f-oH/7 [49.98.169.249]) mailto:sage [2023/08/26(土) 17:41:19.65 ID:/LQp1jGld.net] return detail.documentUrl とか?
926 名前:デフォルトの名無しさん (アウアウエー Sa5f-/No0 [111.239.174.98]) mailto:sage [2023/08/26(土) 18:56:03.08 ID:mvAl1l0Ba.net] return detail.documentUrl; return {redirectUrl: detail.documentUrl}; どちらもダメ。リダイレクトのURLを返すことになるから、リダイレクトの無限ループに入っちゃう それなら、リダイレクト止めればいいじゃんって思うんだけど return {cancel: true}; のようにするとナビゲーション自体が止まってアクセスできなくなっちゃう
927 名前:デフォルトの名無しさん (ワッチョイ cf8a-cMf3 [153.207.237.45]) mailto:sage [2023/08/26(土) 19:46:44.48 ID:HE/rWC1F0.net] 空のオブジェクト返せばいいんじゃないの? こんなの見て参考にしては? https://gitlab.com/ClearURLs/ClearUrls/-/blob/master/clearurls.js?ref_type=heads
928 名前:デフォルトの名無しさん (ワッチョイ e361-NWkk [180.15.228.252]) mailto:sage [2023/08/26(土) 21:15:33.19 ID:AeqeuiS+0.net] 無限ループしてるって事は条件分岐失敗してるんじゃないの? console.logデバッグでもしてみたら?
929 名前:デフォルトの名無しさん (オッペケ Sre7-bab6 [126.212.162.196]) mailto:sage [2023/08/27(日) 12:33:38.16 ID:QiCv/PxZr.net] >>906 リダイレクト後のurlに
930 名前:?foo=barとかクエリ文字列付けてみるとかは? これでフィルタにかからなくなるみたい もちろんこれでサーバが誤動作起こさないのが前提だけど [] [ここ壊れてます]
931 名前:デフォルトの名無しさん (ワッチョイ cf63-n242 [153.218.137.10]) [2023/09/03(日) 21:37:03.60 ID:0BSqvC2P0.net] サイト内にフォームが設置してあるページが複数あります お問い合わせ、新規登録、ログイン、パスワードリマインド、などです 一時的に inputタグを入力不可にしたのですが querySelectorAll("input,button").forEach( e => e.disabled = true ); 複数あるページのうちお問合せだけは入力できるように、 現在は下記の効率の悪い記述になっています、、 document.querySelectorAll("#contact input, #contact button").forEach( e => e.disabled = false); それぞれのページの<body>に idを付与していてそれで判別しているのですが <body id="contact"> <body id="login"> <body id="remainder"> もっとスマートにお問い合わせページだけ入力できる ヒントをお願いできませんでしょうか?
932 名前:デフォルトの名無しさん (ワッチョイ 4327-g4sH [164.70.253.210]) mailto:sage [2023/09/03(日) 21:48:21.38 ID:qR1Ry2o90.net] 【環境】windows10 chrome 最新版 【何をしたのか】開発ツールコンソール上でサンプルコードを実行すると 条件文が undefined にもかかわらず if 文内 console.log(1) が実行される 【エラーメッセージ】なし 【期待する結果】 なぜこうなるのか理由が知りたいです 【サンプルコード】 console.log(localStorage && (localStorage.getItem('deck'))); if(localStorage && (localStorage.getItem('deck'))) console.log(1) if(undefined) console.log(2)
933 名前:デフォルトの名無しさん (ワッチョイ 8361-yzHn [180.15.227.160]) mailto:sage [2023/09/03(日) 23:01:09.12 ID:zsKKxMoe0.net] >>915 console.log(localStorage && (localStorage.getItem('deck'))); の結果は本当にundefined?、undefinedの上の行に何か表示されてるよね?
934 名前:デフォルトの名無しさん (ブーイモ MM7f-sgzH [133.159.150.82]) mailto:sage [2023/09/03(日) 23:17:01.93 ID:II4MkDPZM.net] >>914 下記セレクタでイケるはず(問い合わせページ以外でinput要素とbutton要素を抽出) body:not(#contact) :is(input, button)
935 名前:デフォルトの名無しさん (ブーイモ MM7f-sgzH [133.159.150.82]) mailto:sage [2023/09/03(日) 23:33:36.04 ID:II4MkDPZM.net] >>915 下記のログ出力はどうなる? console.log(localStorage.getItem('deck') !== undefined ? 'バカめ!!よく確認しろ!!' : 'undefined です');
936 名前:デフォルトの名無しさん (ワッチョイ 4327-g4sH [164.70.253.210]) mailto:sage [2023/09/04(月) 13:53:40.48 ID:R0PWdUab0.net] >>916 コンソール出力結果は undefined 1 undefined です >>918 バカめ!!よく確認しろ!! undefined になります
937 名前:デフォルトの名無しさん (ブーイモ MM7f-gLHL [133.159.151.54]) mailto:sage [2023/09/04(月) 14:44:17.50 ID:0gdMzEOZM.net] getItemは該当キーに対する値がなければundefinedではなくnullを返すのでlocalStorageが存在していれば console.log(localStorage && (localStorage.getItem('deck')));は null undefined と出力される undefinedの上が空行になってるならdeckに対する値が入ってる それが空文字ならfalsyなのでconsole.log(1)は実行されない truthyな不可視文字(例えば改行コード)が入っていればconsole.log(1)も実行される inspectやencodeURIで中身に何が入ってるか確かめればはっきりさる
938 名前:デフォルトの名無しさん (ブーイモ MM7f-gLHL [133.159.151.232]) mailto:sage [2023/09/04(月) 14:45:10.48 ID:I1Zu7zQTM.net] はっきりさる!
939 名前:デフォルトの名無しさん (ワッチョイ 4327-g4sH [164.70.253.210]) mailto:sage [2023/09/04(月) 15:37:52.51 ID:R0PWdUab0.net] あー わかりました "undefined" っていう文字列がすでに入っちゃってたみたいです 丁寧に回答いただいてありがとうございました!
940 名前:デフォルトの名無しさん (ワッチョイ cf63-0HOd [153.218.137.10]) mailto:sage [2023/09/04(月) 15:59:10.40 ID:KQbfSHx50.net] ウキキ🐒 input セレクタで解決しましたカッコイイ記述ありがとうございます
941 名前:デフォルトの名無しさん (オッペケ Sr07-JKlf [126.255.138.111]) mailto:sage [2023/09/05(火) 12:01:10.43 ID:y2XoXHZcr.net] >【何をしたのか】開発ツールコンソール上でサンプルコードを実行すると >条件文が undefined にもかかわらず if 文内 console.log(1) が実行される 不可解な挙動に遭遇したとき、自分が何か勘違いしてないかまずそこを疑ってみようという教訓 あとtruthyやfalsyな値の取り扱いは慎重に
942 名前:デフォルトの名無しさん (ワッチョイ 2901-pIYl [60.114.101.121]) mailto:sage [2023/09/28(木) 14:42:04.81 ID:Pzc86hhG0.net] ほんまに、助かったで!
943 名前:デフォルトの名無しさん mailto:sage [2023/10/04(水) 23:59:59.93 ID:77DZdeZo0.net] if(rd41.value){ dofn() } これが正しく実行されないのですが(暴走するというか、意味不明な実行結果が現れます)、if文の中で関数の呼び出しは出来ないのでしょうか? もしそうなら、このコードを正しく動作するように書き換えることは出来ますか?
944 名前:923 mailto:sage [2023/10/05(木) 02:54:19.96 ID:pCa3KI6i0.net] 普通に動作しました すみません
945 名前:デフォルトの名無しさん (ワッチョイ 9f05-cJ9m [116.94.11.103]) mailto:sage [2023/10/16(月) 00:30:39.82 ID:tJl0Ngd50.net] 質問です 下記のURLは音楽サイトJangoの再生ページURLです https://www.jango.com/stations/400536192/tunein https://www.jango.com/stations/397649609/tunein https://www.jango.com/stations/272072365/tunein これらのページをブラウザで開いた時に出てくる水色のメッセージ パネルをJavaScriptで閉じる方法を教えてください Jango plays unlimited music for free and with no commercials. というメッセージの右隣にある[×]マークをクリックしたいのですが document.getElementsByClassName("MuiAlert-action")[0].click() では上手くクリックすることができませんでした
946 名前:デフォルトの名無しさん (ワッチョイ 2e76-tQak [247.119.160.34]) mailto:sage [2023/10/16(月) 00:54:14.00 ID:SqBXoLFp0.net] document.querySelectorAll(“.MuiDialog-container,.MuiBackdrop-root”).forEach(e => e.remove())
947 名前:デフォルトの名無しさん (ワッチョイ 9f05-cJ9m [116.94.11.103]) mailto:sage [2023/10/16(月) 08:33:51.49 ID:tJl0Ngd50.net] >>929 早速ありがとうございます ただ、注意深くコピペして実行させたのですが 残念ながらメッセージパネルは閉じられませんでした
948 名前:デフォルトの名無しさん (ワッチョイ e25c-CexO [211.121.28.151]) mailto:sage [2023/10/16(月) 09:38:31.66 ID:9MW6cr+O0.net] document.querySelector(".MuiSnackbar-anchorOriginTopCenter").remove()
949 名前:デフォルトの名無しさん (ワッチョイ 9f05-cJ9m [116.94.11.103]) mailto:sage [2023/10/16(月) 10:55:49.91 ID:tJl0Ngd50.net] >>931 すいません、それもダメみたいです
950 名前:デフォルトの名無しさん (ワッチョイ 9f05-cJ9m [116.94.11.103]) mailto:sage [2023/10/16(月) 11:01:33.63 ID:tJl0Ngd50.net] ブラウザ上の全然関係ない場所をクリックして自己解決しました document.elementFromPoint(1, 1).click() 根本的な問題から逃げたようで悔しいですけどw
951 名前:デフォルトの名無しさん mailto:sage [2023/10/24(火) 20:00:13.55 ID:xAzUmtPF0.net] >>928 誰一人解決できなかったのか? すまん、俺もわからんw
952 名前:デフォルトの名無しさん (ワッチョイ 877c-JmE3 [122.212.18.110]) mailto:sage [2023/10/25(水) 13:36:08.76 ID:JRNrMb5/0.net] 名前付き引数としてプロパティをもつオブジェクトを引数にする場合のJSDocの書き方ってどう書くのが正しいのでしょうか? ネットで調べて以下の画像のように書くと、VSCodeで関数の説明で表示される時にプロパティ側の日本後説明部分が表示されません。 imgur.com/xhSQcMc.png 構文のほうには型は反映されてるので読み込めてはいるようなのですが…
953 名前:デフォルトの名無しさん (ワッチョイ 5fc2-vcKV [133.155.195.156]) mailto:sage [2023/10/26(木) 10:06:04.96 ID:QIG+kzYs0.net] source = ['いぬ=ドッグ', 'ぬこ=猫咪', 'キャット=にゃんこ', 'ねこ=キャット', 'わんこ=小狗', '老鼠=ねずみ', '小狗=ドッグ', 'マウス=ねずみ', '猫咪=キャット'] これを result = [['いぬ', 'ドッグ', 'わんこ', '小狗'], ['ぬこ', '猫咪', 'キャット', 'にゃんこ', 'ねこ'], ['老鼠', 'ねずみ', 'マウス']] これに集計するにはどうしたらいいですか
954 名前:デフォルトの名無しさん mailto:sage [2023/10/26(木) 12:52:26.88 ID:jSMDhhI40.net] >>936 https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce
955 名前:デフォルトの名無しさん mailto:sage [2023/10/26(木) 12:52:36.47 ID:jSMDhhI40.net] >>936 https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce
956 名前:デフォルトの名無しさん [2023/10/26(木) 13:05:50.11 ID:m2KCtDyt0.net] canvasでarc関数でx:100,y:100の位置に青で塗りつぶした半径3の円を描いたんですが これと同じ位置に同じ半径で同じ色で塗りつぶした円を描くと四角形ぽくなってちょっと大きくなって表示されます。 背景を塗りつぶして1回目に描いた円を一度消去してから2回目の円を描いても同じでした。 文字の場合でも同じ位置に同じ文字を重ね書きすると太くなっちゃいました。 どうすればちゃんと同じ位置に同じ物を描いても太くならないようにできますか?
957 名前:デフォルトの名無しさん (ワッチョイ c791-DWPP [242.12.24.181]) mailto:sage [2023/10/26(木) 22:17:18.42 ID:npbiXWKI0.net] >>936 それは質問ではなくて丸投げと言います
958 名前:デフォルトの名無しさん (ワッチョイ fff0-f0DH [241.193.34.196]) mailto:sage [2023/10/27(金) 08:04:19.82 ID:93zv19AS0.net] >>936 競技プログラミングのスレで聞いて! これは、UnionFind で、3つの木になる UnionFind は、プログラミング・コンテスト・チャレンジブック(蟻本)に載っている
959 名前:デフォルトの名無しさん (ワッチョイ 639d-XI6K [109.236.1.125]) [2023/11/13(月) 18:52:10.34 ID:qEXCkkFf0.net] alertのテキストをコピペする方法とかってご存知ありませんか? どなたか知恵をお貸しください
960 名前:デフォルトの名無しさん mailto:sage [2023/11/13(月) 22:10:22.42 ID:FIfUHr+c0.net] 質問したいなら詳しく書こうね
961 名前:デフォルトの名無しさん mailto:sage [2023/11/14(火) 02:43:20.79 ID:MYkZh+2q0.net] >>942 alertのテキストをコピーするには、通常はウェブページ上でalertが表示されている状態で、テキストを選択して右クリックし、"Copy"や"コピー"を選択する方法があります。ただし、ウェブサイトのalertはJavaScriptで生成されるもので、そのテキストを直接コピーする方法は制限されていることがあります。可能であれば、そのテキストを手入力でコピーすることができます。
962 名前:デフォルトの名無しさん (ワッチョイ c5f9-EFnx [244.158.6.121]) mailto:sage [2023/11/14(火) 19:07:48.92 ID:WEqhXBJy0.net] 検索すれば? コピーを防ぐ方法は、幾つかある ブラウザのF12 ボタンの開発者ツールで調べるとか
963 名前:デフォルトの名無しさん mailto:sage [2023/11/14(火) 20:45:30.47 ID:Mc/CoQSw0.net] >>942 マルチボスト先に答えがある https://mevius.5ch.net/test/read.cgi/hp/1478002550/706-
964 名前:デフォルトの名無しさん (JP 0H89-BcU5 [104.234.140.171]) mailto:sage [2023/11/15(水) 11:30:55.95 ID:FHoogchzH.net] >>939 亀だけど fill()が複数回呼ばれると円が太るみたい ctx.arc(100, 100, 3, 0, Math.PI * 2); ctx.fill(); ctx.arc(100, 100, 3, 0, Math.PI * 2); ctx.fill(); でなく、 ctx.arc(100, 100, 3, 0, Math.PI * 2); ctx.arc(100, 100, 3, 0, Math.PI * 2); ctx.fill(); でやると円が太らなかったよ
965 名前:デフォルトの名無しさん (ワッチョイ e374-n7Dx [211.124.81.22]) [2023/11/15(水) 12:39:52.38 ID:D0hDoGTF0.net] 亀が2chに書き込みにやってきた
966 名前:デフォルトの名無しさん mailto:sage [2023/11/17(金) 20:41:48.61 ID:oUDu0vRd0.net] console.log()のlogってどういう意味ですか? printとかputじゃなくてlogで出力って珍しいですね
967 名前:デフォルトの名無しさん [2023/11/18(土) 14:13:31.53 ID:mHEv1Kbm0.net] consoleオブジェクトのログ情報を出力するためのlogメソッド…
968 名前:デフォルトの名無しさん (アウアウウー Saa1-UHOz [106.180.4.201]) [2023/11/18(土) 16:58:25.29 ID:rXJKESWNa.net] blogのlog
969 名前:デフォルトの名無しさん (ワッチョイ 0d5f-uy16 [14.8.71.128]) mailto:sage [2023/11/18(土) 18:26:17.47 ID:vb+682X10.net] 彼岸島の名産品
970 名前:946 mailto:sage [2023/11/18(土) 23:53:58.59 ID:rj8Lk8BJ0.net] …どこまで信じたらいいの? >>950 ありがとうございます
971 名前:デフォルトの名無しさん (ワッチョイ e300-5mk2 [2400:2200:7f1:bf91:*]) mailto:sage [2023/11/19(日) 10:42:09.47 ID:HAfvoabg0.net] いえいえ
972 名前:デフォルトの名無しさん mailto:sage [2023/11/20(月) 16:19:56.96 ID:q8v/AXQl0.net] const arr =Array(3).fill([]); arr[1].push(0); console.log(arr); この場合arrは[[], [0],[]]になっていることを期待するのですが実際には[[0], [0], [0]]となっています まったく納得いかないのですがなぜですか
973 名前:デフォルトの名無しさん mailto:sage [2023/11/20(月) 16:41:25.42 ID:LC62eXy40.net] >>955 https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/fill#value >配列を埋める値。もし value がオブジェクトであれば、配列のそれぞれの要素はそのオブジェクトを参照します。
974 名前:デフォルトの名無しさん mailto:sage [2023/11/20(月) 16:49:32.78 ID:q8v/AXQl0.net] >>956 fillがそういう仕様なんですね 納得です ありがとうございました
975 名前:デフォルトの名無しさん (ワッチョイ eb79-5mk2 [2400:2200:7f6:ca17:*]) mailto:sage [2023/11/21(火) 08:31:09.87 ID:reAksYQu0.net] いえいえ
976 名前:デフォルトの名無しさん mailto:sage [2023/11/21(火) 23:06:08.47 ID:Hk8WzggI0.net] 変数宣言の際に、letよりconstを積極的に使うべき、とされているのはなぜでしょうか? 後で値を変えられるletの方が便利だと思うのですが
977 名前:デフォルトの名無しさん mailto:sage [2023/11/22(水) 00:26:41.03 ID:nlRha+4K0.net] JSにかかわらず変数は使ってる道中に値変換したり変数使いまわしてるとエラーの種になりやすいし、それを防止するのが大きいかな 配列やオブジェクトの値はconstでも変えられるし 昔はそういうごちゃごちゃ動く変数のトレースするのもプログラム組むやつの能力ってされてたなぁ
978 名前:デフォルトの名無しさん mailto:sage [2023/11/22(水) 03:01:31.39 ID:KDSVu4Ne0.net] コードを上から読んでいく時にconstだとこの値は後から変わることがないと決めつけて読むことができる letだとどこかで書き換えられるのに注意しながら読まないといけない
979 名前:デフォルトの名無しさん [2023/11/22(水) 10:49:23.49 ID:5A+ZhXZi0.net] 可読性の部分が大きいよね varで変数定義しているクソコードなんかリファクタリングしたくないだろ?
980 名前:デフォルトの名無しさん [2023/11/22(水) 11:06:59.29 ID:5A+ZhXZi0.net] constで最初から定義した後にそれが動的な値だった場合タイプエラーを起こしてからletに書き換える事はあるけど最初からletで定義しちゃうと後々constに書き換えた場合もしそれが動的な値ならプログラムそのものが動かなくなって新たなるバグを生むでしょう? 最初は縛りを強くしておいて後から緩めるはあるけど逆はないですよ
981 名前:デフォルトの名無しさん mailto:sage [2023/11/22(水) 15:03:20.05 ID:hF+LjdVs0.net] 条件によって const の値を変えられるようになるといいんだけどな。 簡単なのなら参考演算子でやれるけど。
982 名前:デフォルトの名無しさん (ワッチョイ e302-8oJ/ [27.94.242.45]) [2023/11/22(水) 20:15:59.75 ID:5A+ZhXZi0.net] >>964 よくわからないけどそれってconst使う意味あるの?
983 名前:デフォルトの名無しさん (ワッチョイ 2539-YW6P [2400:2200:6f2:ad2b:*]) mailto:sage [2023/11/22(水) 20:54:04.80 ID:FIiKhTS50.net] 察するに初期代入時に場合によって違う値を入れたいということだろう 三項演算子を出してるし
984 名前:956 (ワッチョイ 4d1d-f5/H [180.178.89.53]) mailto:sage [2023/11/22(水) 21:26:20.43 ID:VeafCB/q0.net] 答えてくれた方々ありがとうございました 積極的にconstを使っていきたいと思います
985 名前:デフォルトの名無しさん (ワッチョイ 25ca-SdNv [122.132.80.240]) mailto:sage [2023/11/22(水) 21:54:03.90 ID:7CtxEw9g0.net] >>965 うまい例になってるかわからないけど、何かのプロパティに値が入ってたらそれ、無ければデフォルト値を const に入れたいとか、この条件がもっと複雑になった感じとか。 あるいは、何かの基準座標を const に入れたいけどその値は一発では求まらないとか。 単にこれだけなら中間的な変数を使って値を求めて、最後に const に代入するって手もあるだろうけど、中間的な変数はスコープから追い出したいのにできないよね。 const x; { let a, b, c; : x = a + b * c; } みたいにできれば a b c はスコープから追い出せるけど、実際は let a, b, c; : const x = a + b * c; ってやらざるを得なくて、x が存在するスコープから a b c を追い出せない。 この計算を function に切り出せよと言うかもしれないけど、できればそうすりゃいいけどどこにでも適用できるというわけでもない。
986 名前:デフォルトの名無しさん (ワッチョイ 250c-YW6P [2400:2200:6d0:af1d:*]) mailto:sage [2023/11/22(水) 22:23:44.12 ID:lZKHNjwl0.net] 調べてみると苦肉の策で↓みたいな書き方が紹介されてたけど可読性考えるとどうだろうね const x = (() => { let a, b, c; : return a + b * c; })();
987 名前:デフォルトの名無しさん (ワッチョイ e3c2-fy5B [2001:240:2467:98ce:*]) mailto:sage [2023/11/22(水) 22:52:37.25 ID:8gAUwwkj0.net] 関数に切り出さない意味がわからない
988 名前:デフォルトの名無しさん (ワッチョイ 6bcf-ekUX [153.206.41.110]) mailto:sage [2023/11/23(木) 00:25:34.14 ID:9np+Rtrn0.net] 欲しいのはただのブロックなのに関数として書かなければならないというのが余計なことをやらされている感はある。
989 名前:デフォルトの名無しさん mailto:sage [2023/11/23(木) 01:53:09.12 ID:pAGXWPD10.net] var使え
990 名前:デフォルトの名無しさん (ワッチョイ 25ca-SdNv [122.132.80.240]) mailto:sage [2023/11/23(木) 15:16:53.54 ID:d47OCYFA0.net] >>969 処理の結果として複数の const、例えば x y を求めたい時は、その書き方でも難があるよね
991 名前:デフォルトの名無しさん (ワッチョイ 2d12-YW6P [2400:2200:6f7:92d9:*]) mailto:sage [2023/11/23(木) 15:39:42.20 ID:98Thj8w70.net] >>973 その場合はタプルで受け取るようにすれば問題ないよ const [x, y] = (() => { let a, b, c; : return [a + b * c, a * b + c]; })();
992 名前:デフォルトの名無しさん (ワッチョイ 25ca-SdNv [122.132.80.240]) mailto:sage [2023/11/23(木) 15:58:06.00 ID:d47OCYFA0.net] >>974 ああ、それが現状の最適解な気がするね。 後で汎用関数化したくなっても対応しやすいし。 まあ >>971 みたいな感覚はあるし、関数としてのコストも気になっちゃうけど。
993 名前:デフォルトの名無しさん (ワッチョイ 551d-1fOb [180.178.89.53]) mailto:sage [2023/11/29(水) 23:49:26.08 ID:oO9dmq1+0.net] const num = 1; とした時、numはCやJavaのint型と違って、1という値のオブジェクトを参照している という理解でよろしいでしょうか? (numという名前でラベリングされたメモリ領域には、1そのものではなく 数値オブジェクトへの参照値が入っている?)
994 名前:デフォルトの名無しさん mailto:sage [2023/11/30(木) 04:02:01.17 ID:uIFlL3tD0.net] >>976 1 はプリミティブ値。 Object型ではない。
995 名前:973 mailto:sage [2023/11/30(木) 22:41:28.93 ID:l5hD/Y3Y0.net] >>977 レスありがとうございます 分かりました 文字列('Hello World'など)もプリミティブなんですよね どうやって内部で実装されてるんですか?
996 名前:デフォルトの名無しさん mailto:sage [2023/11/30(木) 22:57:08.84 ID:mSFTiyup0.net] MDNをまず読みましょう https://developer.mozilla.org/en-US/docs/Glossary/Primitive
997 名前:デフォルトの名無しさん mailto:sage [2023/11/30(木) 23:13:04.35 ID:5k4SwxyG0.net] >>976 実装的には全て参照扱いだよ ただし数値の場合は参照(ポインタ)そのものに数値を埋め込むという方法 だから全て参照だけどメモリは消費しないというハック
998 名前:デフォルトの名無しさん mailto:sage [2023/12/01(金) 01:54:56.09 ID:Bo4sqMI/0.net] >>978 質問が大雑把過ぎる もっと具体的に詳しく
999 名前:975 (ワッチョイ 691d-zrcD [180.178.89.53]) mailto:sage [2023/12/02(土) 04:48:25.07 ID:3pMMmiCv0.net] 返信くれた方々、ありがとうございます >>979 TOEICのスコア400点台だったので厳しいです… >>980 参照扱いでもプリミティブ型って言うんですか? Javaではintやdoubleなど参照を用いずにデータを記憶する型をプリミティブ型と 呼んでいたので、少し混乱しています… >>981 すみません、以後気を付けます
1000 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 10:49:58.14 ID:qpNh64Np0.net] >>980 は気にしなくていいよ 英語苦手でもプリミティブには7つの型がある、ぐらいは読めるだろう あと日本語のページがないか調べるぐらいはしよう https://developer.mozilla.org/ja/docs/Glossary/Primitive
1001 名前:デフォルトの名無しさん (ワッチョイ 91ca-j/4L [122.132.80.240]) mailto:sage [2023/12/02(土) 11:43:24.98 ID:/unkk9Eq0.net] >>982 そもそもそんなことを気にしてどうするの? 何がしたくての質問? ぶっちゃけ表向き気にするべきなのは、その変数 a を別の変数 b に代入して、b を操作したら a まで同じように変わるのかどうかだけだと思うよ。
1002 名前:979 (ワッチョイ 691d-zrcD [180.178.89.53]) mailto:sage [2023/12/03(日) 12:45:58.94 ID:FUDcVj1n0.net] >>983 分かりました ありがとうございます >>984 レスありがとうございます うーん、まあこだわりとでも言いましょうか… 個人的にはそこまで知っておくことは無駄ではないと思います
1003 名前:デフォルトの名無しさん (ワッチョイ c1b6-egvc [2400:2200:6d6:9e9c:*]) mailto:sage [2023/12/03(日) 13:08:07.26 ID:tV1DejKO0.net] >>978 の質問なんかは明らかに自分のスキルや理解力に不相応なことを知ろうとしてない? それを知ろうとするのはもっと力を付けてからがいいと思う
1004 名前:デフォルトの名無しさん (ワッチョイ 1901-+tyV [60.118.124.10]) mailto:sage [2023/12/03(日) 14:24:30.66 ID:GsReymgf0.net] >>985 実装を知る以前に仕様は理解してる? 「仕様書のここをどうやって実装しているか、を知りたい」なら誰かしら答えるかもしれないが、そのようなレベルにも見えない 仕様を理解せずして、実装を理解するのは無理
1005 名前:デフォルトの名無しさん mailto:sage [2023/12/03(日) 17:15:18.22 ID:TpyXoIhbM.net] >>987 乗っかって補足すると、同じ仕様の実装なんて何通りもあるのよね。 そこであえて実装を知りたいというなら、その理由も書く方が間違いないよね。
1006 名前:982 mailto:sage [2023/12/04(月) 23:09:24.91 ID:GWbm6wp00.net] レスありがとうございます 遅くなってすいません >>986 そうですよね まあ単純に、文字列である以上、変数用に確保したメモリ領域内に簡単には収まらない だろうなと推測したんです でも不変な値なら参照使わなくても収まるのかな >>987 微妙です 入門書を読んで間もないレベルです >>988 分かりました まあ実装って言い回しが大仰でした 参照を使ってあるかどうかを特に知りたかったんです
1007 名前:デフォルトの名無しさん mailto:sage [2023/12/04(月) 23:27:59.49 ID:lRGkzbxI0.net] そのレベルを気にする人はもうフレームワーク作るレベルだろう
1008 名前:デフォルトの名無しさん (アウアウウー Sa9d-/D3x [106.146.123.7]) mailto:sage [2023/12/05(火) 20:06:09.74 ID:gtr9NjJza.net] >>985 あ、ややこしい書き方してすまん 単にuint64_tが値の参照でオブジェクトの場合はポインタが入ってて 整数の場合はそのまま使ってると言うことを言いたかっただけ typedef uint64_t JsValue; JsValueが「値」を指す参照 JsValue obj = createObject(); // Object JsValue smi = createSmi(); // Small Integer こうすることでオブジェクトも数値も同じように扱える V8もJSCも全部これ
1009 名前:982,986 mailto:sage [2023/12/05(火) 23:32:22.63 ID:c1y4Tvg20.net] レスありがとうございます >>990 そうなんですかね >>991 内容がハイレベルですね
1010 名前:デフォルトの名無しさん mailto:sage [2023/12/06(水) 00:21:20.37 ID:HaZOzd170.net] >>989 入門書を読んで間もないレベルなら、口が避けても「仕様を理解した」とは言えない 実装を覚えるのは仕様書を読めるようになった後だろう https://262.ecma-international.org/14.0/
1011 名前:デフォルトの名無しさん mailto:sage [2023/12/09(土) 10:39:43.45 ID:npLWblUF0.net] 素人な質問で申し
1012 名前:有りません。 下記のスクリプトで何故か関数丸々出力されてしまうのです。 テキストでは改行が多すぎる為、投稿出来ないため画像で申し訳有りません。 下のグレーのフォントが出力結果です。 出力指定していないので、何も出力されないはずなのですが…。 https://i.imgur.com/tJnx1oK.jpg [] [ここ壊れてます]
1013 名前:デフォルトの名無しさん mailto:sage [2023/12/09(土) 11:31:37.42 ID:In8GNdRi0.net] >>994 画像でコート見るのはしんどいので、>>2 のサイト使って現象が再現するコードを掲示してほしい
1014 名前:デフォルトの名無しさん [2023/12/09(土) 14:27:43.55 ID:iYG1bkmj0.net] >>994 どうでもいいけど関数名の付け方にセンスないな コメントもつける意味がないゴミ 変換ならconvertとかにすりゃいいのに…
1015 名前:デフォルトの名無しさん mailto:sage [2023/12/09(土) 15:46:37.17 ID:W9usxQKOr.net] /や:が入ってるのを明示してるのはコメントとして意味があるだろう
1016 名前:デフォルトの名無しさん (ワッチョイ 1b56-m+YX [2400:4176:2846:5b00:*]) mailto:sage [2023/12/09(土) 16:39:16.69 ID:0uXDsiHr0.net] classのインスタンスで#プライベートメソッドにアクセスする方法ってないんでしょうか?
1017 名前:986 (ワッチョイ b51d-g9yR [180.178.89.53]) mailto:sage [2023/12/09(土) 17:13:36.47 ID:YETt4fHv0.net] >>993 はい リンクありがとうございます
1018 名前:デフォルトの名無しさん (オッペケ Sre1-tek/ [126.254.232.20]) mailto:sage [2023/12/09(土) 17:46:24.03 ID:Mnb70srnr.net] なかったんで次スレ立てた https://mevius.5ch.net/test/read.cgi/tech/1702111239/
1019 名前:デフォルトの名無しさん mailto:sage [2023/12/10(日) 11:19:27.25 ID:ngtmyS7f0.net] >>995 サイトの使い方がいまいち分からず試してましたが、サイトでは症状が再現できず想定通りの挙動でした。これは作ってるアプリ側に原因があるのでしょうかね。 mementoというdbアプリだったのですが。 >>996 自覚はあります。プログラムに興味を持ち練習はじめなので勘弁してやってください。思いつかないんですorz
1020 名前:デフォルトの名無しさん (ワッチョイ 35cb-tek/ [2400:2200:6f2:ada4:*]) mailto:sage [2023/12/10(日) 11:47:16.59 ID:v6fUhk/70.net] >>1001 >>994 を実行してる環境について書いてくれないと コードで見えてる部分以外については知りようがないんだから あと関数名を思いつかないならAIに候補を挙げさせるのはアリ 続きが必要なら次スレにどうぞ
1021 名前:デフォルトの名無しさん [2023/12/16(土) 00:37:24.71 ID:xiFcB2tC0.net] テスト
1022 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 495日 8時間 39分 45秒
1023 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています