Make sure variable is array
本问题已经有最佳答案,请猛点这里访问。
我想在可能是单个对象或数组的变量上运行
我尝试使用spread运算符确保变量变为数组,但显然这也不起作用:
1 2 3 4 | // items can either be an object or an array of objects renderedItems = [...items] .filter(item => !!item) .map((item, index) => _this.renderItem(item, index)); |
我怎样才能确保我做的变量是一个EDCOX1(1)和
可以使用EDCOX1(0)来检查变量是否是数组。
1 2 3 4 5 | if(variable instanceof Array){ //variable is an Array } else { //variable is not an Array } |
1 2 3 4 5 6 7 | var array = [1, 2, 3, 4, 5]; var str ="String"; function isArray(obj){ return obj instanceof Array; } console.log("array is an Array:"+isArray(array)); console.log("str is an Array:" + isArray(str)); |
您也可以使用
1 2 3 4 5 | if(Array.isArray(variable)){ //variable is an Array } else { //variable is not an Array } |
1 2 3 4 5 6 7 | var array = [1, 2, 3, 4, 5]; var str ="String"; function isArray(obj){ return Array.isArray(obj); } console.log("array is an Array:"+isArray(array)); console.log("str is an Array:" + isArray(str)); |
可以检查变量的构造函数是否等于数组。
1 2 3 4 5 6 7 | var array = [1, 2, 3, 4, 5]; var str ="String"; function isArray(obj){ return obj.constructor === Array; } console.log("array is an Array:"+isArray(array)); console.log("str is an Array:" + isArray(str)); |