問題タブ [destructuring]

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.

0 投票する
1 に答える
3427 参照

swift - Swift: タプルを可変変数と不変変数に同時にアンパックする

2 つの値のタプルを返す Swift 関数があります。最初の値は、常にではありませんが、通常、呼び出し元の変更可能な状態の一部の「更新された」バージョンとして使用されることを意図しています (inoutタプルの代わりにこれを使用することもできますが、それはそれをより面倒にします新しい状態を維持しながら古い状態を維持します)。2 番目の値は、通常、関数によって生成される不変の戻り値であり、既存の変更可能な状態をオーバーライドすることは意図されていません。

概念的には、使用法は次のようになります。

ここでの問題は、明らかに、retval1retval2、およびretval3が宣言されておらず、コンパイラが怒ることです。

stateである必要があり、var再宣言してはならないので、書くことはできません

ただし、は変更されることはなく、ベスト プラクティスと適切なコーディング スタイルの問題としてretvalで宣言する必要があります。let

次の構文が機能することを期待していましたが、機能しません。

このタプルを解凍/分解するにはどうすればよいですか?

0 投票する
2 に答える
1965 参照

dictionary - Clojure のキーを知らずにマップをキーと値のペアに分解するにはどうすればよいですか?

そのような地図があるとします

私はこれを次のようにマッピングしたいと思います (注 - 非動作疑似コード):

最初に関数のキーを取得し、それらをマッピングして関数から読み戻さなくても、これは可能ですか?

私の質問は、Clojure のキーを知らずにマップをキーと値のペアに分解するにはどうすればよいですか?

0 投票する
1 に答える
227 参照

haskell - Haskell のレンズと Clojure の破壊の類似点と相違点は何ですか?

仮定:

  • ネストされた JSON 文字列を解析したい。
  • Haskell は型システムを使用して問題を解決することを推奨しており、Clojure は型システムを避け、データ構造を使用して問題を解決することを好みます。
  • 両方の言語でこのプロセスがdestructuringと呼ばれていることは承知していますが、Clojure では別の名前がありませんが、Haskell ではこれもusing a lensと呼ばれているため、Clojure を 1 つのdestructuringと呼んでいます。の上

Haskell で次のようなレンズ を作成できることがわかります。

その目的は、データ構造healthから値を取得することです。game

Clojure では、次のような構造化を行うことができます。

目的は、ネストされた構造から名前、ページなどのネストされた値を取得することです。

どちらの場合も、ネストされた構造から値を再利用可能に取得するメカニズムを考え出しています。

私の質問は、Haskell のレンズと Clojure の破壊の類似点と相違点は何ですか?

0 投票する
1 に答える
102 参照

dictionary - 大きなハッシュマップのClojure単一関数引数?

CSV データ (ヘッダーなし) を返す古い API の結果を解析しようとしています。関数はparse-responseうまく機能しますが、チェックしようとするとverify-responseで失敗しArityException Wrong number of args (0) passed to: PersistentHashMapます。キー フィールドをチェックし、無効な場合は別のエラー ハッシュ マップを作成する関数を介してハッシュ マップを渡すにはどうすればよいですか?

0 投票する
4 に答える
4132 参照

javascript - ES6 分解関数パラメーター - ルート オブジェクトの命名

構造化されていない関数の引数の名前を保持する方法はありますか? つまり、ルート オブジェクトの名前ですか?

ES5 では、これを行う可能性があります (要点を説明するための比喩として継承を使用します)。

複数の構成パラメーターを保持するために同じoptionsオブジェクトを使用しています。一部のパラメータは親クラスで使用され、一部はサブクラスで使用されます。

ES6 で構造化されていない関数の引数でこれを行う方法はありますか?

setupChildClass6()または、個別に に渡すことができるように、すべてのオプションを抽出する必要がありますsetupParentClass6()か?

0 投票する
2 に答える
1252 参照

groovy - Groovy の一貫性のないリストの構造化/分解?

肯定的なケース: リストに入ることができます

否定的なケース:同じことはできません