2 回答

TA貢獻1797條經(jīng)驗 獲得超6個贊
返回一個新函數(shù),該函數(shù)調(diào)用func包裝在中的try..catch,并記住該函數(shù)之前是否有錯誤:
const a = func => {
let hasThrown = false;
return function () {
if (hasThrown) {
return null;
}
try {
return func(...arguments);
} catch (e) {
console.error(e);
hasThrown = true;
return null;
}
};
};
const a = func => {
let hasThrown = false;
return function() {
if (hasThrown) {
return null;
}
try {
return func(...arguments);
} catch (e) {
console.error(e);
hasThrown = true;
return null;
}
};
};
const getMyName = (name) => {
if (name === "jos") {
throw new Error(`${name} is wrong`);
}
return `${name} is yummy`;
};
const getName = a(getMyName);
console.log(getName("harry"));
console.log(getName("garry"));
console.log(getName("jos"));
console.log(getName("jon"));

TA貢獻2036條經(jīng)驗 獲得超8個贊
你可以圍繞getCount()內(nèi)部try和catch
try {
getCount()
}
catch(e){
console.log(e)
}
添加回答
舉報