首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >了解CoffeeScript中splice返回的结果

了解CoffeeScript中splice返回的结果
EN

Stack Overflow用户
提问于 2012-03-31 00:33:45
回答 2查看 2.5K关注 0票数 3

我将CoffeeScript与JS拼接函数一起使用。我对JS拼接函数的理解是,它应该返回拼接出来的对象并修改原始数组。这对于简单的数组似乎工作得很好,但是当我开始向数组添加对象时,事情就崩溃了。下面是一个带注释的简化案例:

和一个链接code

代码语言:javascript
复制
#Class that will go in array
class Thing
  do: ->
    alert "Hi"

a = new Thing
b = new Thing

arr = []

arr.push(a)
arr.push(b)

arr[0].do()  # this works

result = arr.splice(0,1)
alert result.do()  # this does not work

splice是否做了使其无法工作的事情?如果有人知道发生这种情况的原因和/或解决办法,我将非常感激,

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-31 00:36:13

Array.splice()返回被删除元素的数组;因为它有可能通过第二个参数删除多个元素:

因此,您应该使用alert result[0].do();

Working example: http://jsfiddle.net/Cjtaa/

票数 4
EN

Stack Overflow用户

发布于 2012-03-31 00:37:23

splice返回一个array

所以你需要做的是:

代码语言:javascript
复制
result = arr.splice(0,1)
alert result[0].do() 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9946981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档