gpt4 book ai didi

javascript - 无法将项目添加到数组

转载 作者:行者123 更新时间:2023-11-28 15:24:08 25 4
gpt4 key购买 nike

我正在尝试向我的数组添加一个新节点,我认为这是在调用 createList() 时已经创建的一个新的空数组,所以我一定做错了什么,因为我收到 list.nodes 未定义的错误.

var head = createNode(null);

var list = createList();
list.nodes.push(head); // error is here, undefined array

function List(){

this.nodes = [];
this.addNodeToList = addNodeToList;

function addNodeToList(data){

var currentNode = head;
var newNode = createNode(data);

while(currentNode.getNextNode() != null){
currentNode = currentNode.getNextNode();
}

currentNode.nextNode = newNode;

return;
}
}


function createNode(data){
return new Node(data);
}

function createList(){
return new List();
}

function Node(data){
this.data = data;
this.nextNode = null;
}

function createList(){
return new Node(null);
}

最佳答案

您定义了 creatList 函数两次。后面的定义不返回节点数组:

 function createList(){
return new Node(null);
}

删除它就可以了

编辑:考虑以下因素:

var a = 5;
var a = 6;
//OR
var f = function (){ alert(1)}
var f = function (){ alert(2)}

由于 JS 不支持函数重载,所以声明一个函数两次与上面赋值的效果是一样的——后者隐藏了更早的

关于javascript - 无法将项目添加到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29888487/

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