Javascript 语法错误:意外标记。创建递归列表时

Javascript 语法错误:意外标记。创建递归列表时,javascript,recursion,Javascript,Recursion,我正在编写第4章中雄辩的javascript练习,我似乎无法列出这个递归列表。它给了我一个语法错误,方法“.”调用是一个意外的标记 function createList(arr) { if(!arr.length){ return {value:arr[0], rest: null}; } else {

我正在编写第4章中雄辩的javascript练习,我似乎无法列出这个递归列表。它给了我一个语法错误,方法“.”调用是一个意外的标记

function createList(arr) {
     if(!arr.length){
         return {value:arr[0], rest: null};                                                                        
     }
     else {
         return {
             value: arr[0] ,
             rest: {
                 createList(arr.slice(1))
             }
         };
     }
 }

 console.log(arrayToList([1,2,3]));
这被解释为对象,而不是块语句。它正在寻找一个
key:value
对,但它没有看到

尝试:

这被解释为对象,而不是块语句。它正在寻找一个
key:value
对,但它没有看到

尝试:


什么是
阵列列表
?我假设您打算调用
createList
。另外,在专门检查长度是否为0后,为什么还要尝试访问
arr[0]
?我认为错误已经被指出,但如果您给我们实际的错误输出(包括行号和堆栈跟踪,如果可用),我们可以更好地帮助您。什么是
阵列列表
?我假设您打算调用
createList
。另外,在专门检查长度是否为0后,为什么还要尝试访问
arr[0]
?我认为错误已经被指出,但如果您给我们实际的错误输出(包括行号和堆栈跟踪,如果可用),我们可以更好地帮助您。
rest: {
    createList(arr.slice(1))
}
return {
    value: arr[0],
    rest: createList(arr.slice(1))
};