大家好,我在yui对象中具有以下功能:

fun1: function (x){
    ....
    if (condition)
        this.fun1(x-1);
}

但是我已经在调试模式下看到指令this.fun1(x-1)引发错误:Uncaught TypeError:undefined不是一个函数如何解决?

===============>>#1 票数:2

确保调用正确函数的最佳方法是不要依赖于此并且不要使用匿名函数。 给您一个函数一个临时名称,然后这样称呼它。

var obj ={
fun : function Q(a){
    if(a>0){
        return Q(a-1) + a;
    }
    return 0;
  }
}

如果您仅使用此名称进行递归调用,则通常以一个大写字母进行调用。

尝试并始终为函数命名,因为这样更容易调试(函数名称将显示在调用跟踪中)

请注意,在javascript中使用递归可能很危险,因为javascript没有尾部调用优化功能,如果您不小心,则很容易运行堆栈溢出。

===============>>#2 票数:0

在用于定义对象的对象文字符号中,请避免使用此方法,因为这是指窗口对象。 相反,您可以使用要创建其属性的对象名称。

var obj = {
   testfunction: function() {
        obj.testfunction();
   }
};

  ask by esoni translate from so

未解决问题?本站智能推荐:

1回复

如何知道异步递归活动何时完成?

我有一个基于目录结构构建列表的脚本。 它从WebDAV资源读取以发现锁,每个文件,并追加节点和类以将该结构显示为一系列嵌套列表,如果列表项被锁定,则在列表项上带有一个类。 一切都很好,我现在要做的就是将功能分配给创建的列表节点。 我可以添加此功能,因为列表项是在异步回调的范围内创建
3回复

从JavaScript的递归函数返回对象数组

我正在研究递归函数。 我必须在数组中推送所有具有键“ data:true”的对象。 我函数中间的console.log将所有这些对象放在单独的数组中。 但是我无法返回最后带有对象的数组。 我究竟做错了什么? 谢谢 const entries = { root:
1回复

递归函数以在javascript中搜索json对象

我正在尝试用JavaScript编写递归函数,但无法正常工作。 我有一个对象数据的json数组,我想在其中基于键查找某些内容,然后再次基于搜索对象中的gotopage键查找。 像:查找橙色-> gotopage-> orange_store->查找-> orang
3回复

数组中嵌套对象的JavaScript递归函数

我正在尝试实现一个算法来生成一个带有分层标头的表。 这些可以无限制嵌套。 呈现的表标记的html示例可能如下: <table border=1> <thead> <tr> <th colspan="6"> Super one
1回复

Javascript - 无尽的递归函数

我目前正在开发一个Chrome扩展程序,让用户点击一个节点来获取其内容。 使用textContent时获取内部文本很简单,但是在单击的div获取图片的url ... 我尝试使用此函数来获取img节点,从而能够读取其href / src : 但它似乎没有结束,我真的不明白为什么。
5回复

javascript返回递归函数

讨厌为前一个扩展打开一个新问题: 这会返回iteration = 5,但结果是UNDEFINED? 怎么可能? 我明确地返回了sWord。 它应该返回“hahalollollollollol”并且仅用于双重检查,如果我在返回sWord之前警告(sWord)它正确地显示它。
2回复

如何使用递归函数(javascript)

function numberSum(num) { var str = num.toString(); var arrNum = str.split('').map(Number);//arrNum = [1, 2, 3]; //For-looping var result = 0;
2回复

for循环内的Javascript递归函数

myself($f_leg[i][0]); 中断for循环,如何使其在循环中多次运行?
1回复

JavaScript中的递归函数

也许是一个微不足道的问题,我不知道为什么该函数在执行else语句时会从for循环中退出。 我需要此函数来获取xml文档。
2回复

Javascript递归函数参考

我正在尝试创建一个函数,该函数将生成类似树的结构,以便每个项目都包含对其父项目的引用。 我创建了孩子,但我与它有一个艰难的时候调用自身的函数,似乎一旦从自身内部叫this还是指顶级项目,而不是当前的一个。 登录控制台以查看项目是什么,我可以看到父项比第一级深时总是引用链中的第一项(或