私はjsでjqueryと一般的にjavascript関数のセットを持っています。今、私はいくつかの機能が何らかの条件で利用可能になるのを避けたいと思っています。例えば:
function test () {
alert("hi");
}
function avoid () {
if(condition) {
//here avoid to call test
}
}
ありがとう
私はjsでjqueryと一般的にjavascript関数のセットを持っています。今、私はいくつかの機能が何らかの条件で利用可能になるのを避けたいと思っています。例えば:
function test () {
alert("hi");
}
function avoid () {
if(condition) {
//here avoid to call test
}
}
ありがとう
エラーなしで関数を削除したい場合 (関数の呼び出し元が返される結果を予期していない場合)、次のようにすることができます。
function avoid () {
if(condition) {
test = function(){}; // does nothing
}
}
avoid
関数が別のスコープにある場合は、適応が必要になる場合があることに注意してください。たとえばtest
、グローバル スコープで定義されている場合は、次のようにします。window.test = function(){};
あなたの質問をよく理解できたかどうかはわかりませんが、テスト関数の呼び出しが以下のような回避関数内にある場合:
function test () {
alert("hi");
}
function avoid () {
if(condition) {
//here avoid to call test
return false;
}
test();
}
次に、単純な return false で問題を解決できます。関数がイベントを使用しているかどうかはわかりませんが、その場合は、 preventDefault と return false について読むことができる良い投稿です :ここにリンクの説明を入力してください
テストが以下のように回避の同じレベルにある場合:
function test () {
alert("hi");
}
function avoid () {
if(condition) {
//here avoid to call test
return false;
}
return true;
}
// below is your functions call
check = avoid();
if(check){
test();
}
この投稿では、関数を終了する方法について説明しています:ここにリンクの説明を入力してください
それが役立つことを願っています。