我在我的一个项目页面中找到了在Google Analytics(分析)脚本上的实现。
我想知道第一行的目的是什么:“ myArray || []”“?
为什么要在具有另一个空数组的数组上使用OR操作?
var myArray = myArray || [];
myArray.push(['_setAccount', 'UA-39103830-1']);
myArray.push(['_trackPageview']);
此“或”操作将一个空数组分配给myArray
(如果不存在)。上面的代码在功能上等效于:
if(myArray == null || myArray==undefined)
myArray = [];
myArray.push(['_setAccount', 'UA-39103830-1']);
myArray.push(['_trackPageview']);
如果观察下面的代码片段,它将检查伪造的值,例如undefined
null
,0
,-0
,0n
,""
和NaN
(还包括空数组[]
),则它将分配权限。
var arr; // undefined
var arr = arr || [];
console.log(arr) // Output: []
var arr = null; // null
var arr = arr || [];
console.log(arr) // Output: []
var arr = ""; // empty string
var arr = arr || [];
console.log(arr) // Output: []
var arr = "Mr.7"; // string
var arr = arr || [];
console.log(arr) // Output: Mr.7