問題タブ [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.
ruby - 混合クラスから参照するためのモジュール内のメソッドのタグ付け
M
このモジュールに混在するクラスが特定のメソッド名が特別かどうかをチェックできるように、特定のメソッドに「特別」のタグを付けたいモジュールがあります。これは私が試したことです:
クラスメソッドからインスタンスメソッドを呼び出すことができないため、もちろんこれは機能しませんself.special
。モジュール内の必要なメソッドの下で呼び出すことができるという機能を保持したい場合はspecial :<name>
、クラス変数を使用するしかないと思います (例:@@specials
誰かが私が間違っていることを証明できますか?)
java - 非静的メソッドへの静的参照を作成できませんか?
つまり、要するに。私には2つのクラスがあります。
と
「非静的メソッドgameStart()への静的参照を作成できません」というエラーが発生し続けます。簡単なものが欠けていると思いますが、見つかりません。ありがとう!
ruby-on-rails - クラスをインスタンス化せずにRubyメソッドを呼び出す
次のように、Railsアクティブモデルメソッドでメソッドを呼び出すと:
最初のアクティブなレコードを取得します。クラスをインスタンス化する必要はありません。
しかし、独自のクラスを作成してメソッドを呼び出すと、例外が発生します。
どうすればその問題をなくすことができますか?
ruby - Ruby Unbound Methods: 他のクラスのインスタンスに強制的にバインドすることは可能ですか?
これを強制できるかどうか知りたい
現在、エラー TypeError: bind argument must be an instance of A をスローします
これらのバインドされていないメソッドでできることに関して、これは非常に制限的であることがわかりました。可能性は少し制限されています。このような場合 (冪等関数だけに言及しているわけではありません)、それは理にかなっていますよね? そして、Bで複製されないAからの変数を処理する場合、実行エラーで十分でした。このバインドを強制する方法を本当に知りたいです。
ios - iOSデリゲートメソッドが必要なときに呼び出されない
アプリケーションに使用するカスタムデータコントローラーがあり、その中にいくつかのデリゲートメソッドを設定しています。それらはすべて機能しますが、私も必要なときに機能しません。[dataController refreshData]を呼び出すと、デリゲートメソッドrefreshDidStartとrefreshDidFinishWithoutErrorがあります。データコントローラーを割り当て、デリゲートをselfに設定し、applicationDidFinishLaunchingでrefreshDataを呼び出しますが、メソッドの実行が完了したときに、デリゲートメソッドがビューコントローラーのテーブルビューを更新しません。しかし、[dataController refreshData]を呼び出すように更新UIBarButtonItemを設定すると、refreshDidFinishデリゲートメソッドが呼び出され、想定されていることを実行します。私が使っているスプリットビューコントローラーと関係があると思います。以下はコードです:
アプリデリゲート:
MasterViewController:
objective-c - Objective C のデリゲートとクラス メソッドとインスタンス メソッドの比較
次のリンクに同様の質問がありますが、 私の質問にはまったく答えていません。
Facebook のヘルパー クラスを設定しています (委任パターンに従います)。クラス メソッドの 1 つの例は次のようになります。
openActiveSessionWithReadPermissions
このメソッドは、 completedHandler ブロックを期待するFacebook メソッドを呼び出します。sessionStateChanged
次のようにブロック内でデリゲート メソッドを呼び出すことは理にかなっていますか?
または、Facebook ヘルパー クラスのインスタンス メソッドを使用[self.delegate sessionStateChanged]
し、completionHandler ブロックを使用してデリゲートを呼び出す方がよいでしょうか。
ruby - Ruby: インスタンス メソッドの名前空間
インスタンスメソッドがたくさんあり、すべて同じインスタンス変数を共有しています。クラスが大きくなったので、メソッドを約 50 個のモジュールに分割しました。そして、残ったクラスには、これら 50 個のモジュールがすべて含まれています。
メソッド名の衝突を避けるために、「module_name_method_name」のようなインスタンスメソッドでいっぱいの信じられないほど醜いコードになりました。問題は、各モジュールが同様の (似ているが同じではない) 機能を持っている可能性があることです (同様のメソッド名)。
私の現在のコードは次のようになります。
モジュール:
.... 約 50 のそのようなモジュール
コードをより適切に設計するにはどうすればよいですか? 最も重要なことは、すべてのインスタンス メソッドが同じインスタンス変数を共有する必要があるということです..または、少なくとも何らかの方法で同じデータにアクセスできます!
編集:私はこれを自分で思いついた:
実際、それは醜いメソッド名の問題を解決しますが、現在、私は新しい問題に取り組んでいます: 変数 @foo は非常に大きくなる可能性があり、メモリに 50 回 (またはそれ以上) 重複しています (そのようなクラスが 50 あるため)。
他の解決策はありますか?
python - インスタンスメソッドの Python デコレータ
このコードのどこが間違っているか知っている人はいますか?
次のエラーが表示されます。
これがうまくいくと思った理由は、試行錯誤の結果、次のデコレータがクラスメソッドの魅力のように機能するようになったからです。
python - クラスメソッドとインスタンスメソッドの両方で動作するデコレータ
次のように定義された 2 つのデコレータがあり、どちらもまったく同じことを行います。
2 つある理由は、クラス メソッドの場合は最初の引数を cls=cls として渡す必要があり、インスタンス メソッドの場合は self=self で渡す必要があるためです。しかし、これは明らかに理想的ではありません。インスタンスメソッドとクラスメソッドで機能するデコレータを構築する方法を知っている人はいますか?
node.js - メソッド定義とスキーマ命名を正しく順序付けた後、mongooseインスタンスメソッドは未定義です
アクセスできないように見えるスキーマでインスタンス メソッドを定義しました。詳細に入る前に、[この質問] ( Mongoose instance method is undefined ) を読みましたが、同じ問題がありましたが、根本的な原因は異なるはずです。モデルをその名前に接続する前に、すべてのインスタンス メソッドを定義しました。
最初にスキーマを定義し、次にインスタンス メソッドを定義しました。}
そのファイルの最後で、名前をスキーマに関連付けます。 var exports = module.exports = Account = mongoose.model('Account', AccountSchema);
記録として、スキーマと名前を関連付ける直前に、AccountSchema.methods にインスタンス メソッドがあることを確認しました。
その後、Account.findOne を使用してアカウントのインスタンスをフェッチします。
上記のスニペットを含めるのは、データベースからアカウントを取得した時点でインスタンス メソッドがなくなっているように見えるためです。
最後に、doc.addFunds を呼び出そうとすると、次のようになります。
インスタンスメソッドを使用する完全に完全なマングーススキーマ定義へのヘルプまたはリンクをいただければ幸いです。