我想将一个对象作为参数传递给函数,并将事物分配给该对象的属性,然后这些属性就可以在函数外部访问。但我不太清楚它是如何完成的。
起初我认为可以使用回调来完成,但我很清楚 JavaScript 不能那样工作。我最终设法让它工作,并且未定义的错误消息消失了。但我现在想通过该函数传递一个数组。如何才能做到这一点?这是我到目前为止所做的,但似乎不起作用。
var journey = {};
journey['waypointsArrayItem'] = new Array();
setupAddress(journey)
function setupAddress(journey) {
var waypointsItem = $('.timeline-item.active-item > .timeline-status > .waypoints').text().substring(4);
journey.waypointsArrayItem = [];
journey.waypointsArrayItem = listToArray(waypointsItem, ', ');
for (var i = 0; i < waypointsArray.length; i++) {
journey.waypointsArrayItem[i] = journey.waypointsArrayItem[i];
}
}
最佳答案
您正在将数组项复制到自身。从 waypointsArray
数组复制到 journey.waypointsArrayItem
数组:
function setupAddress(journey) {
var waypointsItem = $('.timeline-item.active-item > .timeline-status > .waypoints').text().substring(4);
var waypointsArray = listToArray(waypointsItem, ', ');
for (var i = 0; i < waypointsArray.length; i++) {
journey.waypointsArrayItem[i] = waypointsArray[i];
}
}
根据您的需要,您也可以替换整个数组:
function setupAddress(journey) {
var waypointsItem = $('.timeline-item.active-item > .timeline-status > .waypoints').text().substring(4);
journey.waypointsArrayItem = listToArray(waypointsItem, ', ')
}
关于javascript - 将对象中的数组传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28774521/