我正在开发一个Web应用程序。 android包装器有一个JavaScript界面命名android和IOS有一个界面命名ios。我必须尝试两个接口,但只有其中一个会响应。
我不知道第二次尝试的位置?在第一次尝试里面?在捕获或最终或抛出或完全分开的try / catch块?
哪一个在逻辑上是首选,哪一个在性能上更好?
第一个想法:
try {
ios.myMethod();
}
catch(err) {
try {
android.myMethod();
}
catch{
console.log('The Android does not exist');
}
console.log('The ios does not exist');
}
第二个想法:
try {
try {
android.myMethod();
}
catch{
console.log('The Android does not exist');
}
ios.myMethod();
}
catch(err) {
console.log('The ios does not exist');
}
第三个想法:
try {
ios.myMethod();
}
catch(err) {
console.log('The ios does not exist');
}
finally{
try {
android.myMethod();
}
catch{
console.log('The Android does not exist');
}
}
我的最后一个想法:
try {
android.myMethod();
}
catch{
console.log('The Android does not exist');
}
try {
ios.myMethod();
}
catch{
console.log('The IOS does not exist');
}
答案 0 :(得分:0)
第一个想法似乎合适。另外看看你是否可以使用if else语句,如下所示:
if (window.ios && window.ios.myMethod {
ios.myMethod();
} else if (window.android && window.android.myMethod) {
android.myMethod();
}