javascript - 测试函数时未定义

标签 javascript

所以我一直在研究制作星形图案的函数,但不知何故,当我“innerHTML”它时,我总是得到“未定义”。谁能帮我看看我做错了什么?

pOutput.innerHTML = square(3);
poutput.innerHTML = rectangle(2,3);

function square(x) {
var z;
for (var i = 1; i<=x; i++) {
    for ( var j = 1; j<=x; j++) {
        z += "*";
    }
    z += "<br>";
}  
return z
}

function rectangle(x, y) {
var z;
for (var i = 1; i<=x; i++) {
    for ( var j = 1; j<=y; j++) {
        z += "*";
    }
    z += "<br>";
}  
return z  
}

最佳答案

你应该做 var z = "" 否则值是undefined,看这个:

var z;

console.log(z)

完整示例:

console.log(square(3));
console.log(rectangle(2,3));

function square(x) {
var z = "";
for (var i = 1; i<=x; i++) {
    for ( var j = 1; j<=x; j++) {
        z += "*";
    }
    z += "<br>";
}  
return z
}

function rectangle(x, y) {
var z = "";
for (var i = 1; i<=x; i++) {
    for ( var j = 1; j<=y; j++) {
        z += "*";
    }
    z += "<br>";
}  
return z  
}

关于javascript - 测试函数时未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52504799/

相关文章:

javascript - 在 Javascript 中将特殊字符编码为 Base64,并在 PHP 中使用 base64_decode() 进行解码

javascript - 使用 Angular JS 从 Amazon S3 私有(private)存储桶检索图像

javascript - 如何交替显示滑动div

javascript - 如何将 Array.forEach 转换为与 Q.js 异步?

c# - 如何从第二个重定向页面更新第一个页面?

javascript - For 循环和调用数组

javascript - 数据表搜索框

javascript - 将txt上传到服务器后换行符消失

javascript - ES6 setter - 保持对象干净//将参数映射到实例对象上

javascript - 无法使用 Angular 模式表单指令渲染复选框