問題タブ [instance-methods]

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

ruby - 混合クラスから参照するためのモジュール内のメソッドのタグ付け

Mこのモジュールに混在するクラスが特定のメソッド名が特別かどうかをチェックできるように、特定のメソッドに「特別」のタグを付けたいモジュールがあります。これは私が試したことです:

クラスメソッドからインスタンスメソッドを呼び出すことができないため、もちろんこれは機能しませんself.special。モジュール内の必要なメソッドの下で呼び出すことができるという機能を保持したい場合はspecial :<name>、クラス変数を使用するしかないと思います (例:@@specials誰かが私が間違っていることを証明できますか?)

0 投票する
7 に答える
10046 参照

java - 非静的メソッドへの静的参照を作成できませんか?

つまり、要するに。私には2つのクラスがあります。

「非静的メソッドgameStart()への静的参照を作成できません」というエラーが発生し続けます。簡単なものが欠けていると思いますが、見つかりません。ありがとう!

0 投票する
5 に答える
10841 参照

ruby-on-rails - クラスをインスタンス化せずにRubyメソッドを呼び出す

次のように、Railsアクティブモデルメソッドでメソッドを呼び出すと:

最初のアクティブなレコードを取得します。クラスをインスタンス化する必要はありません。

しかし、独自のクラスを作成してメソッドを呼び出すと、例外が発生します。

どうすればその問題をなくすことができますか?

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

ruby - Ruby Unbound Methods: 他のクラスのインスタンスに強制的にバインドすることは可能ですか?

これを強制できるかどうか知りたい

現在、エラー TypeError: bind argument must be an instance of A をスローします

これらのバインドされていないメソッドでできることに関して、これは非常に制限的であることがわかりました。可能性は少し制限されています。このような場合 (冪等関数だけに言及しているわけではありません)、それは理にかなっていますよね? そして、Bで複製されないAからの変数を処理する場合、実行エラーで十分でした。このバインドを強制する方法を本当に知りたいです。

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

ios - iOSデリゲートメソッドが必要なときに呼び出されない

アプリケーションに使用するカスタムデータコントローラーがあり、その中にいくつかのデリゲートメソッドを設定しています。それらはすべて機能しますが、私も必要なときに機能しません。[dataController refreshData]を呼び出すと、デリゲートメソッドrefreshDidStartとrefreshDidFinishWithoutErrorがあります。データコントローラーを割り当て、デリゲートをselfに設定し、applicationDidFinishLaunchingでrefreshDataを呼び出しますが、メソッドの実行が完了したときに、デリゲートメソッドがビューコントローラーのテーブルビューを更新しません。しかし、[dataController refreshData]を呼び出すように更新UIBarButtonItemを設定すると、refreshDidFinishデリゲートメソッドが呼び出され、想定されていることを実行します。私が使っているスプリットビューコントローラーと関係があると思います。以下はコードです:

アプリデリゲート:

MasterViewController:

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

objective-c - Objective C のデリゲートとクラス メソッドとインスタンス メソッドの比較

次のリンクに同様の質問がありますが、 私の質問にはまったく答えていません。

Facebook のヘルパー クラスを設定しています (委任パターンに従います)。クラス メソッドの 1 つの例は次のようになります。

openActiveSessionWithReadPermissionsこのメソッドは、 completedHandler ブロックを期待するFacebook メソッドを呼び出します。sessionStateChanged次のようにブロック内でデリゲート メソッドを呼び出すことは理にかなっていますか?

または、Facebook ヘルパー クラスのインスタンス メソッドを使用[self.delegate sessionStateChanged]し、completionHandler ブロックを使用してデリゲートを呼び出す方がよいでしょうか。

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

ruby - Ruby: インスタンス メソッドの名前空間

インスタンスメソッドがたくさんあり、すべて同じインスタンス変数を共有しています。クラスが大きくなったので、メソッドを約 50 個のモジュールに分割しました。そして、残ったクラスには、これら 50 個のモジュールがすべて含まれています。

メソッド名の衝突を避けるために、「module_name_method_name」のようなインスタンスメソッドでいっぱいの信じられないほど醜いコードになりました。問題は、各モジュールが同様の (似ているが同じではない) 機能を持っている可能性があることです (同様のメソッド名)。

私の現在のコードは次のようになります。

モジュール:

.... 約 50 のそのようなモジュール

コードをより適切に設計するにはどうすればよいですか? 最も重要なことは、すべてのインスタンス メソッドが同じインスタンス変数を共有する必要があるということです..または、少なくとも何らかの方法で同じデータにアクセスできます!

編集:私はこれを自分で思いついた:

実際、それは醜いメソッド名の問題を解決しますが、現在、私は新しい問題に取り組んでいます: 変数 @foo は非常に大きくなる可能性があり、メモリに 50 回 (またはそれ以上) 重複しています (そのようなクラスが 50 あるため)。

他の解決策はありますか?

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

python - インスタンスメソッドの Python デコレータ

このコードのどこが間違っているか知っている人はいますか?

次のエラーが表示されます。

これがうまくいくと思った理由は、試行錯誤の結果、次のデコレータがクラスメソッドの魅力のように機能するようになったからです。

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

python - クラスメソッドとインスタンスメソッドの両方で動作するデコレータ

次のように定義された 2 つのデコレータがあり、どちらもまったく同じことを行います。

2 つある理由は、クラス メソッドの場合は最初の引数を cls=cls として渡す必要があり、インスタンス メソッドの場合は self=self で渡す必要があるためです。しかし、これは明らかに理想的ではありません。インスタンスメソッドとクラスメソッドで機能するデコレータを構築する方法を知っている人はいますか?

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

node.js - メソッド定義とスキーマ命名を正しく順序付けた後、mongooseインスタンスメソッドは未定義です

アクセスできないように見えるスキーマでインスタンス メソッドを定義しました。詳細に入る前に、[この質問] ( Mongoose instance method is undefined ) を読みましたが、同じ問題がありましたが、根本的な原因は異なるはずです。モデルをその名前に接続する前に、すべてのインスタンス メソッドを定義しました。

最初にスキーマを定義し、次にインスタンス メソッドを定義しました。}

そのファイルの最後で、名前をスキーマに関連付けます。 var exports = module.exports = Account = mongoose.model('Account', AccountSchema);

記録として、スキーマと名前を関連付ける直前に、AccountSchema.methods にインスタンス メソッドがあることを確認しました。

その後、Account.findOne を使用してアカウントのインスタンスをフェッチします。

上記のスニペットを含めるのは、データベースからアカウントを取得した時点でインスタンス メソッドがなくなっているように見えるためです。

最後に、doc.addFunds を呼び出そうとすると、次のようになります。

インスタンスメソッドを使用する完全に完全なマングーススキーマ定義へのヘルプまたはリンクをいただければ幸いです。