我知道'?'的基本用法 三元运算符。window.URL应该是表达式,应返回true或false。但是在这种情况下,它将返回一个字符串。
如何评估此表达式。
var createSrc = window.URL ? window.URL.createObjectURL : function(stream) {return stream;};
只要字符串true
不为空,则对字符串求值,在这种情况下为false
。
尽管window.URL
在这种情况下看起来好像不是字符串。它似乎是一个对象,如果undefined
也将求和false
。
您的陈述的内容是检查是否window.URL
存在。如果是这样,那么它将分配给createSrc
,window.URL.createObjectURL
我假设它的值可能是一个函数。否则,它将分配三元运算符的第三部分function(stream) {return stream;}
。
这意味着,createSrc
应该始终是一个函数,调用它不会产生错误。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句