(提醒:我不是来问问题的,我已经有自己答案!)
A 君和 B 君各自用 JS 做一个简单的需求:
function test(foo){
var obj= new foo();
obj.wo.ok.arr.push("帅哥");
return obj;
}
当 foo 传入错误参数时 程序是肯定是报错的! obj.wo 无法索引到时,也同样是报错的
现在 A 君和 B 君分别采用不同的方法
-------------------------------------------------------------
A 君采用的方法是:
function test(foo) {
if (typeof foo == "function") {
var obj = new foo();
if (obj.wo && obj.wo.ok && Object.prototype.toString.call(obj.wo.ok.arr) == "[object Array]") {
obj.wo.ok.arr.push("帅哥");
return obj;
}
}
return false;
}
----------------------------------------------------------------------------------------
B 君采用的方法是:
function test(foo) {
try{
var obj = new foo();
obj.wo.ok.arr.push("帅哥");
return obj;
}catch (e){}
return false;
}
结果 B 君成为了全群公敌,及取笑的对象, A 君和 B 君各不相让, A 君更是大骂 B 君:“你百度看看看,你用 TRY 是菜鸟的行为, TRY 效率很差的,应该尽量避免使用 TRY ”。
B 君一向按自己的原则做事, B 君不相信百度,坚持自己的 TRY 立场,B 君觉得自己的 TRY 用得完全合理,一气之下愤然离群!
现在问大家:上面两段你觉得 A 君和 B 君的代码 谁的效率最高呢!
(稍后公布答案)!
A 君和 B 君各自用 JS 做一个简单的需求:
function test(foo){
var obj= new foo();
obj.wo.ok.arr.push("帅哥");
return obj;
}
当 foo 传入错误参数时 程序是肯定是报错的! obj.wo 无法索引到时,也同样是报错的
现在 A 君和 B 君分别采用不同的方法
-------------------------------------------------------------
A 君采用的方法是:
function test(foo) {
if (typeof foo == "function") {
var obj = new foo();
if (obj.wo && obj.wo.ok && Object.prototype.toString.call(obj.wo.ok.arr) == "[object Array]") {
obj.wo.ok.arr.push("帅哥");
return obj;
}
}
return false;
}
----------------------------------------------------------------------------------------
B 君采用的方法是:
function test(foo) {
try{
var obj = new foo();
obj.wo.ok.arr.push("帅哥");
return obj;
}catch (e){}
return false;
}
结果 B 君成为了全群公敌,及取笑的对象, A 君和 B 君各不相让, A 君更是大骂 B 君:“你百度看看看,你用 TRY 是菜鸟的行为, TRY 效率很差的,应该尽量避免使用 TRY ”。
B 君一向按自己的原则做事, B 君不相信百度,坚持自己的 TRY 立场,B 君觉得自己的 TRY 用得完全合理,一气之下愤然离群!
现在问大家:上面两段你觉得 A 君和 B 君的代码 谁的效率最高呢!
(稍后公布答案)!