[過去ログ]
JavaScript の質問用スレッド vol.125 (1002レス)
JavaScript の質問用スレッド vol.125 http://mevius.5ch.net/test/read.cgi/tech/1659855460/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
61: デフォルトの名無しさん (ワッチョイ 3501-bBdM [126.94.243.226]) [sage] 2022/09/05(月) 19:18:18.86 ID:ng2JfbNn0 >>59 XPath式を使えば、textContentを使わなくて済む https://jsfiddle.net/kb5e740f/ http://mevius.5ch.net/test/read.cgi/tech/1659855460/61
62: デフォルトの名無しさん (ワッチョイ 3501-bBdM [126.94.243.226]) [sage] 2022/09/05(月) 19:25:28.71 ID:ng2JfbNn0 >>61 テキストノードを子に持つ要素ノードを捕捉するコードにすればよかった https://jsfiddle.net/kb5e740f/1/ http://mevius.5ch.net/test/read.cgi/tech/1659855460/62
63: デフォルトの名無しさん (アウアウウー Sa69-QaXK [106.129.180.164]) [] 2022/09/07(水) 17:04:03.05 ID:zBxXyTwva プログラミング初心者でJavaScriptを勉強してます。 メンバ変数A、メソッドBを持つクラスがあり、メソッドBの中で変数Aを活用(Aを用いた処理やAの変更)したいのですが、 Aを引数としてBに渡して返り値として受け取るのと、Bの中で直接this.Aと記述して処理するのは何か違いがありますか? メソッドBに別の変数を渡す可能性があるなら前者でないといけないのでしょうが、そうでなければ後者の書き方でよいでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1659855460/63
64: デフォルトの名無しさん (ワッチョイ 6501-vbgY [60.85.61.123]) [sage] 2022/09/07(水) 18:23:46.99 ID:LU0OXBc/0 >>63 this.Aは全てのインスタンスメソッドで参照できる this.Aはインスタンスを参照可能なスコープ上で参照可能 仮引数AはメソッドBの関数スコープ外から参照不可能 http://mevius.5ch.net/test/read.cgi/tech/1659855460/64
65: デフォルトの名無しさん (ワッチョイ 232c-HH83 [219.162.239.51]) [sage] 2022/09/07(水) 19:11:15.04 ID:8NMkvrFG0 Ruby で書くと、 initialize は、constructor class A def initialize @x = 0 end def f_1 @x = 1 end def f_2( num ) @x = num end end p a = A.new #<A: @x=0> a.f_1 p a #<A: @x=1> a.f_2( 2 ) p a #<A: @x=2> http://mevius.5ch.net/test/read.cgi/tech/1659855460/65
66: デフォルトの名無しさん (スッップ Sd43-5GnA [49.98.171.228]) [] 2022/09/07(水) 19:17:44.81 ID:GIiuva0od >>64 それ何にも疑問の解決になってないだろう http://mevius.5ch.net/test/read.cgi/tech/1659855460/66
67: デフォルトの名無しさん (ワッチョイ 6501-bBdM [60.85.61.123]) [] 2022/09/07(水) 20:26:24.25 ID:LU0OXBc/0 >>66 ↓のsetAとcalcAの違いを聞いてるんじゃないのか? class Foo { constructor (a) { this.A = a; } setA (a) { this.A = calc(a); } calcA (a) { return calc(a); } } わかっているらしいあなたが回答すれば済む話だが http://mevius.5ch.net/test/read.cgi/tech/1659855460/67
68: デフォルトの名無しさん (ワッチョイ 2b7c-QaXK [113.43.107.134]) [] 2022/09/08(木) 00:18:00.64 ID:rIQlC2lz0 すいません。以下の様な状況でfuncCからfuncBまたはB'が呼ばれる状況を考えていました。B'のほうが楽な気がして。そもそも意味不明な質問だったら申し訳ないです… ``` class Foo{ varA; // varAの値はよそから取得 funcB (a){ //aに対する処理 return a;} funcB' (){ //this.varAに対する処理 } funcC(){ ans = funcB(this.varA); または funcB'(); ans = this.varA; } } http://mevius.5ch.net/test/read.cgi/tech/1659855460/68
69: 65 (ワッチョイ 232c-HH83 [219.162.239.51]) [sage] 2022/09/08(木) 07:17:36.21 ID:eI1uoUaK0 Ruby では、>>65 に書いたように、 def f_1 @x = 1 end みたいに、クラス内のインスタンスメソッド・f_1 内で、 インスタンス変数・@x を使えるので、一々、引数で渡す必要がない http://mevius.5ch.net/test/read.cgi/tech/1659855460/69
70: デフォルトの名無しさん (ワッチョイ 955f-Iguz [14.13.137.64]) [sage] 2022/09/08(木) 19:40:45.35 ID:6QKcdu8L0 オブジェクト指向の一般的な話としては、クラス内の関数であればクラス内のメンバはいじっても問題ないと思う。 ただ、「どこの関数がこのメンバを触ってるのかわからない」ってほどクラスが巨大化するなら、もはやそれはたちの悪いグローバル変数そのものなので設計からおかしい。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/70
71: デフォルトの名無しさん (ワッチョイ 6501-CzlZ [60.85.61.123]) [sage] 2022/09/08(木) 22:51:00.93 ID:D/mmzJCP0 >>68 一つ一つのコードの意味を理解して、一つ一つのコードでなぜをそれを使うのか、と自問して答えを出せば、自ずと答えが出てくる 質問していない部分で突っ込みどころが多すぎて、「何も考えてないんだな」と思わせられる https://jsfiddle.net/qem7cLyf/ ・なぜ 全ての関数は返り値を持たないのか? ・なぜ Foo1#funcB は静的関数ではないのか? ・なぜ Foo1#funcC,Foo2#funcC は返り値ではなく、グローバル変数に演算結果を格納したのか? ・なぜ Foo2#varA の初期化にコンストラクタの引数を使わないのか? こういう質問全てにこたえられるぐらいに考えられないと良いコードはかけない https://jsfiddle.net/s27mxepn/ ・可能な限り、変数のスコープはせまくあるべき ・可能な限り、関数は参照透過性を持つべき 今後、インスタンスプロパティを拡張する予定があるならclassを使うべきだし、そうでないなら静的関数で十分 >>64で示した挙動の違いだけで十分に判断できる http://mevius.5ch.net/test/read.cgi/tech/1659855460/71
72: デフォルトの名無しさん (オッペケ Sr81-3vxq [126.254.237.221]) [sage] 2022/09/08(木) 23:10:43.06 ID:DGEh14TYr それがプログラミング初心者に投げつける言葉かよ・・・ そういう知識や判断力もゆくゆくは必要だけども物事には順序ってもんがあってまだその域ではなかろう マウントが取りたいだけならもっと近いレベルの相手にやんなよ http://mevius.5ch.net/test/read.cgi/tech/1659855460/72
73: デフォルトの名無しさん (テテンテンテン MM4b-HSKh [133.106.60.103]) [sage] 2022/09/08(木) 23:23:08.03 ID:xrpQvLAzM >>63 いいと思うよ というかBに汎用性を持たせるのは微妙 http://mevius.5ch.net/test/read.cgi/tech/1659855460/73
74: デフォルトの名無しさん (アウアウウー Sa69-QaXK [106.129.156.188]) [] 2022/09/09(金) 09:56:50.51 ID:Rq87TVpoa this.Aで書いた方が手っ取り早いことが多い気がしたのですが、そちらでもいいけどスコープに注意しないとバグの要因になる、グローバル変数を濫用しないようにというのと相似形の似たような話という認識でいいでしょうか。 下手したら必然性なく両者を混在させてしまったりしそうなので注意したいと思います。参照透過性とか言葉自体知りませんでした… 参考になりました。ありがとうございます。 http://mevius.5ch.net/test/read.cgi/tech/1659855460/74
75: デフォルトの名無しさん (スップ Sd03-5GnA [1.75.3.22]) [] 2022/09/09(金) 11:06:49.13 ID:hB1+BppPd >>74 今は>>70の理解でいいと思うよ 今の時点であまり詰め込んでもしょうがないし >>71みたいなののせいで萎縮しないでね http://mevius.5ch.net/test/read.cgi/tech/1659855460/75
76: デフォルトの名無しさん (ワッチョイ 6501-CzlZ [60.85.61.123]) [sage] 2022/09/09(金) 19:12:54.25 ID:0zkp1JmC0 >>72 > 物事には順序ってもんがあってまだその域ではなかろう 順序が大切なことには同意 ダメ出しがたくさんあるのは「学習の順序」が間違っているから いろいろと学習を飛ばしてコードを書いており、その質問をする域に達していない 初心者だからこそ、もっと基礎的な課題から取り組むのが現実解だと俺は思う 今までの受け答えを見る限り、付け焼刃で知識をつけているように俺には見える > マウントが取りたいだけならもっと近いレベルの相手にやんなよ マウントを取りたいわけじゃない http://mevius.5ch.net/test/read.cgi/tech/1659855460/76
77: デフォルトの名無しさん (ワッチョイ 232c-HH83 [219.162.235.49]) [sage] 2022/09/09(金) 20:14:57.93 ID:n8dQNxep0 だから、オブジェクト指向とかプログラミングは、Ruby から始めるべき。 JavaScript(JS)みたいなややこしいもので、デザインパターンを学ぶべきではない 改訂2版 Ruby逆引きハンドブック の1冊だけで、かなりのモジュール・ライブラリの使い方も分かる 同じページ数でも、JSなら、文法だけで終わる。 20年以上のJSの歴史を追っかけて行くから、文法だけでもRubyの5倍ぐらいある だから、こういう言語へ手を出したらダメ。 Rubyist は、JSなどをコピペで済ます。 深い所までやらない。分量的に切りがない http://mevius.5ch.net/test/read.cgi/tech/1659855460/77
78: デフォルトの名無しさん (ワッチョイ a95f-pw5f [14.8.104.32]) [sage] 2022/09/10(土) 00:48:49.86 ID:1NdnS3vZ0 学習の順序とか提示せずに「何も考えてない」と切り捨てるのはマウンティングに入らないんですか? http://mevius.5ch.net/test/read.cgi/tech/1659855460/78
79: デフォルトの名無しさん (ワッチョイ 1901-T2pD [60.85.61.123]) [sage] 2022/09/10(土) 06:13:53.00 ID:Cpvx7Vnj0 回答者相手にマウントとってる人に真面目に答えるだけ無駄か そんな暇があったら、質問者に回答すればいいのに http://mevius.5ch.net/test/read.cgi/tech/1659855460/79
80: デフォルトの名無しさん (オッペケ Src5-qUKH [126.254.242.25]) [sage] 2022/09/10(土) 09:58:22.29 ID:aLnVTfHzr 君は高圧的な正しさで初心者を殴ってるだけ 人にものを教えるのには向いてないと思うよ http://mevius.5ch.net/test/read.cgi/tech/1659855460/80
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 922 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.012s