slice不是函数(javascript)

avoid .slice is not a function (javascript)

本文关键字:javascript 函数 slice      更新时间:2023-09-26

所以我有一个变量,因为这一点有一个静态定义,我希望它现在从if-else语句中动态获取值,但上面提到的错误弹出:

var x = [{a:b},{c:d},{e:f}]

我想改变它,从一个函数中得到值:

var x = function(){
    if(true){
      return [{a:b},{c:d},{e:f}]
    }else{
      return [{f:g},{h:i}]
    }
}

但是我得到一个错误x.slice is not a function我会做错什么吗?环顾四周,但无法解决此问题。。。这不可能吗?

x是一个函数,因此您尝试在函数上调用.slice()。你想调用x()并使用返回值,然后切片:

x().slice(1);

x是一个函数,因此它没有切片。您应该在之前运行它

var x = (function(){
    if(true){
      return [{a:b},{c:d},{e:f}]
    }else{
      return [{f:g},{h:i}]
    }
})()