为什么直接return出去,数据不更新查询后没有数据,重新定义一个变量接收数据,数据值就更新成功?

为什么直接return出去,数据不更新查询后没有数据,重新定义一个变量接收数据,数据值就更新成功?

为什么直接return出去,数据不更新查询后没有数据,重新定义一个变量接收数据,数据值就更新成功?


回答:

MDN 文档里有写:

filter() 方法是一个复制方法。它不会改变 this,而是返回一个包含与原始数组相同的元素(其中某些元素已被过滤掉)的浅拷贝

人话就是这个函数不会改变原数组, 因此的tableDate并没有发生任何改变, 当然没有更新, 而重新赋值后就改变了就发生了DOM更新


回答:

你直接return 也只是赋值给了外层函数的返回值啊 跟数据值没有关系
想用return的话 可以在调用这个外层函数的时候 赋值给数据值 就可以了
eg:this.tableData=func() //func=外层函数


回答:

filter不改变自身


回答:

filter是建一个新的数组来存放filter后的结果,不会去修改this.tableData,你只是把这个新数组return出去了 没有修改this.tableData

以上是 为什么直接return出去,数据不更新查询后没有数据,重新定义一个变量接收数据,数据值就更新成功? 的全部内容, 来源链接: utcz.com/p/935098.html

回到顶部