問題タブ [mutators]

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 に答える
439 参照

null - setName と getName を実行した後、名前フィールドが null になるのはなぜですか?

私はプログラムに取り組んでおり、すべてが機能するようになりましたが、教授が私たちのプログラムをテストするために私たちに与えるテストの一部に合格できません。null データで setName と getName を実行した後、名前フィールドが null であることがわかります。mutator が null データの名前を空の文字列に設定していることを確認してください。アクセサーが誤って null 値を返していないことを確認してください。私のsetLicenseとgetLicenseに何か問題があるかどうかはわかりませんが、それらは非常に似ているため、同じ問題が発生する可能性があると感じています。この質問はこれまでになかったと思いますが、申し訳ありません。

}

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

javascript - クロージャにアクセスできるデコレータの作成

非常によく似たタスクを実行する必要がある小さなオブジェクトがたくさんあり、デコレータを使用してこれらのオブジェクトを変更したいと考えています。これにより、物事がずっと簡単になります。問題は、これらのオブジェクトの特定のデータにアクセスするとすぐにトリガーする必要があると同時に、実際のデータへの外部アクセスを防止する必要があることです。したがって、クロージャーを使用してプライベート データを保存し、外部アクセス用の魔法のミューテーターを提供しています。最後に、特に理由もなくコンストラクターも使用しています。

これは、オブジェクトと頭の痛い部分の非常に縮小されたバージョンです。

さて、ミューテーターが使用されたときに残りのオブジェクトとは異なる動作をする必要があるオブジェクトがいくつかあります。だから、ミューテーターを上書きするだけでいいと思いました。

これはうまくいきません。hiddenState新しい getter/setter ペアのスコープ内で定義されていないときにアクセスしようとすると、参照エラーが発生します。

新しいミューテーターを渡すとすぐに、古いミューテーターからしかアクセスできなかったクロージャーを JS がダンプするのではないかと思います。この問題に対処する方法はありますか?

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

java - パラメータと引数なしでメソッド間で変数を渡す方法

私の学校のプロジェクトで少し問題があります。毎月の支払いとローンの合計支払いを返すなど、ローンに関連することを行う Loan クラスを作成することになっています。私の問題は、このコードには絶対に外に出られない特定の指示があることです。コードは次のとおりです。

私の問題は getTotalPayment メソッドにあります。MonthlyPayment 変数は、annualInterestRate などのフィールドとして宣言するか、getTotalPayment メソッドに渡さないとアクセスできません。問題は、getTotalPayment にパラメーターを指定することは許可されておらず、コードの冒頭で宣言されている 3 つのフィールドよりも多くのフィールドを指定することは許可されていないことです。それで、私の質問: monthPayment をフィールドにしたり、getTotalPayment にパラメーターを与えたりせずに、変数monthlyPayment を getTotalPayment にアクセスできるようにする方法はありますか?

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

c++ - 割り当てと取得のためのブラケット オーバーロード。定数、参照

C++ での大括弧のオーバーロードに関して、私のコンパイラはアクセスに mutator メソッドを使用しています。誰でも理由を教えてもらえますか?

たとえば、以下の cout コマンドはミューテーター関数の定義 (上記の #2) を使用してデータにアクセスしています。

データを取得するために最初の関数 (アクセサ) を使用しないのはなぜですか? cout は単なる検索なので、最初に発火すると思います。

コンパイラは、これらのどれを呼び出すべきかをどのように認識しますか?

編集:完全を期すために、ミューテーターとは、次のように「セッター」として使用されることを意味します。

両方を組み合わせると、次のようになります。

rhs は単なる「ゲッター」です。単純にcheddar[1]の値を取得し、何も変更しないため、const にすることができます。対照的に、lhs ブラケット オーバーロードcheddar[2]は「セッター」として機能します。値は変更でき、関数の戻り値を const にすることはできません。

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

java - mutator メソッド Java を使用して 2D 配列の要素を変更する

私が書いている Battleship プログラムには、ドライバー、ドメイン、ヘルパー クラスの 3 つのクラスがあります。mutator メソッドを使用してドメイン クラスの char の 2D 配列内の要素の値を変更したかったのですが、渡そうとすると「互換性のない型: char を char[][] に変換できません」というエラーが表示され続けます。ヘルパー クラスの配列をドメイン クラスに渡します。私は何を間違っていますか、またはこれを行う別の方法があります。

これはミューテータークラスです

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

java - Struts2 ParametersInterceptor のエラー

com.opensymphony.xwork2.interceptor.ParametersInterceptor エラー SEVERE: 開発者通知 (struts.devMode を false に設定してこのメ​​ッセージを無効にします):
予期しない例外がキャッチされました 'Screen_name' を 'クラス org.ScreenCreation に設定しています: 式 'Screen_name' を値で設定中にエラーが発生しました [ 'kjn', ]

私はstruts2を初めて使用し、このエラーが発生しました。誰かが解決するのを手伝ってくれますか?

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

java - ミューテーターでメソッド宣言された変数を使用していますか?

クラスのメソッドから変数を取得し、それをミューテーターで使用するロジックに混乱しています。

編集:ここに私のコードダンプがあります

私のコード:

行き先はこちら

スタック オーバーフローのせいで入力する時間が増えたので、投稿できるようにここでいくつかの単語をとりとめなくするつもりです。

0 投票する
3 に答える
2274 参照

laravel - Laravel モデルの条件付き書式

次のような Vote_actions というデータベースとモデルがあります。

  • ID
  • group_id
  • ユーザーID
  • アクションタイプ
  • 匿名 (ブール値)

ユーザーは匿名であることを要求できます (ブール値が true になります)。その場合、返されたモデルから group_id と user_id を -1 に変更します。

私がそれを行うことができるlaravelの方法はありますか?

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

laravel - Laravelミューテーターでモデルプロパティにアクセスする

created_at日付をペルシャの日付に変換したい。だから私getCreatedAtAttributeはそれを行う機能を実装しました。特別な状況で日付を変換したいだけなので$convert_dates、モデルでプロパティをデフォルト値として宣言しましたfalse

上記のコードでわかるように、モデル プロパティは mutators で再初期化されるように見えるため、 の値$convert_datesは alwaysfalseです。

この問題を解決するための他のトリックや解決策はありますか?