使用“+=”拼接字符串,打印的时候出现undefined

使用“+=”拼接字符串,打印的时候出现undefined

出现undefined的代码如下

  var contentstr
  contentstr += "<div class='ques-box'><p>问题:<p><div class='ques-box-title'>描述:"+obj.phenomenon+"</div><div class='ques-box-content'>解决方法:"+obj.quMethod+"</div></div>"

打印出现如下情况

在这里插入图片描述

将代码改为如下就好了

  var contentstr = ‘’
  contentstr += "<div class='ques-box'><p>问题:<p><div class='ques-box-title'>描述:"+obj.phenomenon+"</div><div class='ques-box-content'>解决方法:"+obj.quMethod+"</div></div>"

在这里插入图片描述
原先声明contentstr时,并没有定义,它是没有值的。所以是undefined,给str附空值即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这段代码实现了一个随机生彩色方块的功能,点击按钮时会在指定范围内随机生不同颜色、大小、位置的方块,并添加到页面上。 代码分析: 1. HTML 部分: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <button id="but">点击</button> <div id="div1"></div> <script> // ... </script> </body> </html> ``` 这段 HTML 代码包含一个按钮和一个空的 div 容器,用于显示生的方块。 2. JavaScript 部分: ```javascript function init() { var div1 = document.getElementById("div1"); but.onclick = clickHeadler; } function clickHeadler() { var size = random(101.20); var color = "#"; for (i = 0; i < 6; i++) { color += parseInt(random(16)).toString(16); } var str = "<div style='"; str += "width:" + size + "px;"; str += "height:" + size + "px;"; str += "background:" + color + ";"; str += "position:absolute;" str += "left:" + random(1000) + "px;"; str += "top:" + random(1000) + "px;"; str += "'>" + "</div>"; div1.innerHTML += (str); } function random(a, b) { if (b === undefined) b = 0; return parseInt(Math.random() * (a - b) + b); } init(); ``` 这段 JavaScript 代码分为三部分: - `init()` 函数:用于初始化页面,获取 div 容器的元素并为按钮添加点击事件。 - `clickHeadler()` 函数:为按钮点击事件的回调函数,随机生方块的大小、颜色和位置,并将其添加到 div 容器中。 - `random()` 函数:用于生指定范围内的随机整数。 在 `clickHeadler()` 函数中,通过随机生方块的大小、颜色和位置等样式,将其拼接一个字符串,并通过 div 容器的 innerHTML 属性将该字符串添加到 div 容器中,从而实现在指定范围内随机生方块的功能。 需要注意的是,生的方块是绝对定位的,因此需要在 CSS 样式中设置 div 容器的 position 属性为 relative 或 absolute。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值