gpt4 book ai didi

返回未定义的 Javascript 对象

转载 作者:行者123 更新时间:2023-11-30 12:46:39 26 4
gpt4 key购买 nike

我正在创建一个变量,其值由特定方法确定。这个特定的方法应该返回一个具有两个属性的对象。但是,方法返回后变量未定义。我在返回之前检查了对象的值并且没问题。所以在变量的返回和实例化之间发生了一些事情,导致它未定义。这是一个代码片段:

var results = findTarget(target, after, append); //undefined

function findTarget(target, after, append){
var currenttemplate = $(target).attr('data-template');

for(var i=0; i<after.length; i++){
if(after[i] === currenttemplate)
return {target : target, drop : "after"};
}

for(var j=0; j<append.length; j++){
if(append[j] === currenttemplate){
var obj = {target : target, drop : "append"};
console.log(obj); //is fine here
return obj; //this gets returned
}
}

if(currenttemplate === threshold) {
return "";
}

findTarget($(target).parent()[0], after, append);
}

最佳答案

需要在末尾添加一个return:

function findTarget(target, after, append){
/* ... */
return findTarget($(target).parent()[0], after, append);
}

如果不是,则递归调用 findTarget,此递归调用返回适当的值,但第一次调用 findTarget 不会返回它。

关于返回未定义的 Javascript 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22311882/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com