[過去ログ]
JavaScript の質問用スレッド vol.125 (1002レス)
JavaScript の質問用スレッド vol.125 http://mevius.5ch.net/test/read.cgi/tech/1659855460/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
950: 946 (ワッチョイ 4d1d-f5/H [180.178.89.53]) [sage] 2023/11/18(土) 23:53:58.59 ID:rj8Lk8BJ0 …どこまで信じたらいいの? >>947 ありがとうございます http://mevius.5ch.net/test/read.cgi/tech/1659855460/950
951: デフォルトの名無しさん (ワッチョイ e300-5mk2 [2400:2200:7f1:bf91:*]) [sage] 2023/11/19(日) 10:42:09.47 ID:HAfvoabg0 いえいえ http://mevius.5ch.net/test/read.cgi/tech/1659855460/951
952: デフォルトの名無しさん (ワッチョイ 0556-2Aft [202.71.49.47]) [sage] 2023/11/20(月) 16:19:56.96 ID:q8v/AXQl0 const arr =Array(3).fill([]); arr[1].push(0); console.log(arr); この場合arrは[[], [0],[]]になっていることを期待するのですが実際には[[0], [0], [0]]となっています まったく納得いかないのですがなぜですか http://mevius.5ch.net/test/read.cgi/tech/1659855460/952
953: デフォルトの名無しさん (ワッチョイ 83f6-YW6P [2400:2200:6f1:ae40:*]) [sage] 2023/11/20(月) 16:41:25.42 ID:LC62eXy40 >>952 https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/fill#value >配列を埋める値。もし value がオブジェクトであれば、配列のそれぞれの要素はそのオブジェクトを参照します。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/953
954: デフォルトの名無しさん (ワッチョイ 0556-2Aft [202.71.49.47]) [sage] 2023/11/20(月) 16:49:32.78 ID:q8v/AXQl0 >>953 fillがそういう仕様なんですね 納得です ありがとうございました http://mevius.5ch.net/test/read.cgi/tech/1659855460/954
955: デフォルトの名無しさん (ワッチョイ eb79-5mk2 [2400:2200:7f6:ca17:*]) [sage] 2023/11/21(火) 08:31:09.87 ID:reAksYQu0 いえいえ http://mevius.5ch.net/test/read.cgi/tech/1659855460/955
956: デフォルトの名無しさん (ワッチョイ 4d1d-TQK0 [180.178.89.53 [上級国民]]) [sage] 2023/11/21(火) 23:06:08.47 ID:Hk8WzggI0 変数宣言の際に、letよりconstを積極的に使うべき、とされているのはなぜでしょうか? 後で値を変えられるletの方が便利だと思うのですが http://mevius.5ch.net/test/read.cgi/tech/1659855460/956
957: デフォルトの名無しさん (ワッチョイ 0d5f-yKFx [14.8.104.32]) [sage] 2023/11/22(水) 00:26:41.03 ID:nlRha+4K0 JSにかかわらず変数は使ってる道中に値変換したり変数使いまわしてるとエラーの種になりやすいし、それを防止するのが大きいかな 配列やオブジェクトの値はconstでも変えられるし 昔はそういうごちゃごちゃ動く変数のトレースするのもプログラム組むやつの能力ってされてたなぁ http://mevius.5ch.net/test/read.cgi/tech/1659855460/957
958: デフォルトの名無しさん (ワッチョイ e32f-e1iw [2400:2410:34a1:6700:*]) [sage] 2023/11/22(水) 03:01:31.39 ID:KDSVu4Ne0 コードを上から読んでいく時にconstだとこの値は後から変わることがないと決めつけて読むことができる letだとどこかで書き換えられるのに注意しながら読まないといけない http://mevius.5ch.net/test/read.cgi/tech/1659855460/958
959: デフォルトの名無しさん (ワッチョイ e302-8oJ/ [27.94.242.45]) [] 2023/11/22(水) 10:49:23.49 ID:5A+ZhXZi0 可読性の部分が大きいよね varで変数定義しているクソコードなんかリファクタリングしたくないだろ? http://mevius.5ch.net/test/read.cgi/tech/1659855460/959
960: デフォルトの名無しさん (ワッチョイ e302-8oJ/ [27.94.242.45]) [] 2023/11/22(水) 11:06:59.29 ID:5A+ZhXZi0 constで最初から定義した後にそれが動的な値だった場合タイプエラーを起こしてからletに書き換える事はあるけど最初からletで定義しちゃうと後々constに書き換えた場合もしそれが動的な値ならプログラムそのものが動かなくなって新たなるバグを生むでしょう? 最初は縛りを強くしておいて後から緩めるはあるけど逆はないですよ http://mevius.5ch.net/test/read.cgi/tech/1659855460/960
961: デフォルトの名無しさん (ワッチョイ 35d5-SdNv [2404:7a82:3de0:3500:*]) [sage] 2023/11/22(水) 15:03:20.05 ID:hF+LjdVs0 条件によって const の値を変えられるようになるといいんだけどな。 簡単なのなら参考演算子でやれるけど。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/961
962: デフォルトの名無しさん (ワッチョイ e302-8oJ/ [27.94.242.45]) [] 2023/11/22(水) 20:15:59.75 ID:5A+ZhXZi0 >>961 よくわからないけどそれってconst使う意味あるの? http://mevius.5ch.net/test/read.cgi/tech/1659855460/962
963: デフォルトの名無しさん (ワッチョイ 2539-YW6P [2400:2200:6f2:ad2b:*]) [sage] 2023/11/22(水) 20:54:04.80 ID:FIiKhTS50 察するに初期代入時に場合によって違う値を入れたいということだろう 三項演算子を出してるし http://mevius.5ch.net/test/read.cgi/tech/1659855460/963
964: 956 (ワッチョイ 4d1d-f5/H [180.178.89.53]) [sage] 2023/11/22(水) 21:26:20.43 ID:VeafCB/q0 答えてくれた方々ありがとうございました 積極的にconstを使っていきたいと思います http://mevius.5ch.net/test/read.cgi/tech/1659855460/964
965: デフォルトの名無しさん (ワッチョイ 25ca-SdNv [122.132.80.240]) [sage] 2023/11/22(水) 21:54:03.90 ID:7CtxEw9g0 >>962 うまい例になってるかわからないけど、何かのプロパティに値が入ってたらそれ、無ければデフォルト値を 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 に切り出せよと言うかもしれないけど、できればそうすりゃいいけどどこにでも適用できるというわけでもない。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/965
966: デフォルトの名無しさん (ワッチョイ 250c-YW6P [2400:2200:6d0:af1d:*]) [sage] 2023/11/22(水) 22:23:44.12 ID:lZKHNjwl0 調べてみると苦肉の策で↓みたいな書き方が紹介されてたけど可読性考えるとどうだろうね const x = (() => { let a, b, c; : return a + b * c; })(); http://mevius.5ch.net/test/read.cgi/tech/1659855460/966
967: デフォルトの名無しさん (ワッチョイ e3c2-fy5B [2001:240:2467:98ce:*]) [sage] 2023/11/22(水) 22:52:37.25 ID:8gAUwwkj0 関数に切り出さない意味がわからない http://mevius.5ch.net/test/read.cgi/tech/1659855460/967
968: デフォルトの名無しさん (ワッチョイ 6bcf-ekUX [153.206.41.110]) [sage] 2023/11/23(木) 00:25:34.14 ID:9np+Rtrn0 欲しいのはただのブロックなのに関数として書かなければならないというのが余計なことをやらされている感はある。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/968
969: デフォルトの名無しさん (ワッチョイ cd3b-8MWH [2409:251:9020:2100:*]) [sage] 2023/11/23(木) 01:53:09.12 ID:pAGXWPD10 var使え http://mevius.5ch.net/test/read.cgi/tech/1659855460/969
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 33 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.012s