在函数返回值或者赋值的时候经常看到用 ? : 和 || 这两种方式,比如:
return event ? event : window.event;
以及
return event.target || event.srcElement;
在我简单理解都是前者有值的话就取前者,想请问一下这两种方式有区别吗?
在函数返回值或者赋值的时候经常看到用 ? : 和 || 这两种方式,比如:
return event ? event : window.event;
以及
return event.target || event.srcElement;
在我简单理解都是前者有值的话就取前者,想请问一下这两种方式有区别吗?
我觉着没什么区别,只是写法不一样。?:
如果event为真
就直接取?后的值||
会先判断左边的是不是真,如果是真就不会在继续判断后面的,直接返回
所以如果有区别的话,?:
的效率会高||
一丢丢(在第一个表达式不是true的情况下)
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答875 阅读✓ 已解决
6 回答1k 阅读
2 回答1.3k 阅读✓ 已解决
就你这个例子来说,没区别。看个人习惯,我习惯第2种少写些代码。
第1种用在根据条件取不同的值的时候比较多,比如