問題タブ [method-chaining]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - クラスメソッドを列挙し、Pythonで itertools.product() でチェーンする方法は?
昨日、このサイトから次のことができることを知りました。
クラス Seq 内のこれらのシーケンス メソッド チェーンの可能な組み合わせを列挙したいと思います。
itertools.product()
の使い方1)。呼び出し可能な関数チェーン リストを生成しますか? ちょうどこのような:
foo = s.head().odd().even().reverse()
2)。eval() 可能なチェーン文字列を生成し、後で ascii ファイルまたは eval() に保存するか、ログの目的で保存できますか?
はパラメーターを受け入れることができ
/li>head()
、はその必要はありません。たとえば、head() と tail() のパラメーターはリストから取得できます。tail()
even()
odd()
私のQ1が可能であれば、それらのパラメーターを呼び出し可能なリストとeval()可能な文字列に入力するにはどうすればよいですか?より具体的な呼び出し可能なリストとeval()可能な文字列を生成するにはどうすればよいですか?
ありがとう!
javascript - 遅延は機能ではありません
次のようなエラーが発生し続けます。
私のコードでは:
php - メソッドの連鎖と同じクラスの再利用
私は次のクラスを持っています:
現時点で私が行う場合:
これにより、「foo」、「fum」の順に出力されます。
ただし、これを行うと:
常に「fum」を出力します。
なぜそうするのかはある程度わかりますが、DBの新しいインスタンスを作成せずに、変数を各インスタンスに個別に保持するにはどうすればよいでしょうか?
php - PHPチェーン...私はそれを得ることができません!
XMLファイルから返される文字列を操作するための連鎖関数を作成しようとしています。
1つの元の文字列には複数の置換がある場合があり、その一部はXMLファイルからのものです。
これが醜くて標準的なラップされたアプローチです:
str_replace("what","is meant", str_replace("name","randomer",str_replace("blah", "hello", $string1)));
これが私が複製しようとしているアプローチです(Javaのように):
$string1.replace("blah","hello").replace("name","randomer").replace("what","is meant");
上記の場合、XML関数を使用して置換文字列を取得するまでは簡単に機能します。
これが私のクラスです:
なぜ思ったように動かないのか、実際にどうやって動くのかを理解してもらいたい。クラスを再度呼び出すと(var_dumpが別のインスタンスであると言っているにもかかわらず)、元のテキストが「charlie」に置き換えられるため、最初のビットの一部を置き換えることはできません。
ありがとう、ドミニク
編集:はい!! 私はそれを(静力学を使用して)理解しましたが、以下のRyanoにはさらに良い解決策があるようです
.net - チェーンされたXElement軸メソッドでnull参照を処理するエレガントな方法
このようなものを考えると:
nullのBlahまたはWhatever要素を処理して、これらの場合に結果がnullまたは空になるようにするエレガントな方法はありますか?
クエリを分割して手動でこれらのチェックを実行できることはわかっていますが、もっと簡潔なものがあるかどうか疑問に思っていました。
php - PHP メソッドチェーン
最初のメソッドが静的関数である場合、チェーンをメソッド化する方法があるかどうか疑問に思っていました。これが私が意味することです:
編集し
print foo::a()->b();
ないprint foo:a()->b();
scala - 多くのメソッドチェーンを備えたScalaコードで受け入れられている/推奨されている構文は何ですか?
val
Scalaでは、割り当てのある多くの小さな式よりも大きな連鎖式を書くことを好む傾向があります。私の会社では、このタイプのコードのスタイルを進化させてきました。これは完全に工夫された例です(アイデアは、連鎖した呼び出しがたくさんある式を表示することです):
DanielSpiewakのScalaスタイルガイド(pdf)は、私が一般的に気に入っているものですが、複数行の式については説明していませんが、連鎖メソッド呼び出しの先頭のドット表記が正しくない可能性があることを示唆しています(ドキュメント:メソッド呼び出し/高階関数を参照)。このように直接。
上記の関数を書くための別の、より受け入れられた/慣用的な方法はありfoo
ますか?
更新:2011年6月28日
以下にたくさんの素晴らしい答えと議論があります。100%「この方法でやらなければならない」という答えはないようですので、現在最も人気のある回答を投票で受け入れます。これは現在、コンプリヘンションベースです。個人的には、今のところ先頭のドット表記に固執し、それに伴うリスクを受け入れるつもりだと思います。
php - PHP DOM、メソッドチェーン
次のコード行がありますが、最初の表記法は本来あるべきこと (XML 要素とそのコンテンツを DOM に追加する) を行いますが、メソッドをチェーンする場合はそうではありません。
次の例は E_WARNING になります: DOMNode::appendChild(): DOMNode を取得できませんでした。(そのバグ/エラーを見つけるのに約 1 時間かかります。)
同じコードが異なる表記法でエラーになる理由を誰か説明できますか?
編集: PHP 5.3.5 で実行すると、E-WARNING-error が発生する test-case をアップロードしました。
.net - .Net でメソッドをチェーンする正しい方法は何ですか?
.Net では、値を返すメソッド、または void を使用してメソッドを連鎖できます。それらの1つは「正しい方法」ですか?
だからあなたは言うことができます
1)
この場合、3 つの拡張メソッドすべてが IList (myFoo.Bars の型) を返す必要があります。
または次のように書くこともできます
2)
その場合、拡張メソッドは void を返しますが、入ってくるソース オブジェクトに対して作業を行いますか?
UPDATEサイモンは、2)コンパイルされないという彼の答えで正しかった。これを書き直すと次のようになります。
myBars は各メソッドの呼び出し内で変更され、メソッドは void を返します。
java - 静的メソッドを呼び出した後にクラスを再利用する
たとえば、いくつかの static void メソッドを持つクラスがあるとします。
次のように静的メソッドを呼び出すように変更するにはどうすればよいですか。
それ以外の
非静的メソッドでそれを行う方法は知っていますが (これを返すだけです)、静的フィールドでそれを行う方法は?