gpt4 book ai didi

javascript - 打印数组项时显示 "undefined"

转载 作者:行者123 更新时间:2023-11-30 12:16:22 25 4
gpt4 key购买 nike

我创建了一个 Javascript 代码来显示项目列表,如下所示,但在有序列表之前显示了一个意想不到的 undefined。我不知道它在那里是如何显示的。

这段代码中是否有变量未定义或错误插入?

Demo is also on JSBIN . (here 是编写具有相同目标的代码的另一种更好的方法。)

var playList = [
"First Life",
"Spaceman",
"Run run run"
];

function print(message) {
message += "<ol>";
for (var i=0; i<playList.length; i+=1) {
message += "<li>" + playList[i]+"</li>";
}
message += "</ol>";
document.write(message);
}

print();

最佳答案

由于您没有将任何内容作为参数传递给 print(),因此 message 默认为 undefined

您可以使用 OR || 将未传递给函数的 message 的值设置为空字符串。

var playList = [
"First Life",
"Spaceman",
"Run run run"
];

function print(message) {
message = message || ''; // If no message is passed, use empty string

message += "<ol>"; // Removed + from here

for (var i = 0; i < playList.length; i += 1) {
message += "<li>" + playList[i] + "</li>";
}
message += "</ol>";
document.write(message);
}

print();

您还可以缩短您的代码如下:

var playList = [
"First Life",
"Spaceman",
"Run run run"
];

function print(message) {
document.write((message || '') + '<ol><li>' + playList.join('</li><li>') + '</li></ol>');
}

print();
ol {
color: green;
}

关于javascript - 打印数组项时显示 "undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32328326/

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