javascript - js中 加等于的累加赋值问题求解
问题描述
第一张图片 我能理解 在变量a中 +=过后 a的值是18
第二张图片 我首先创建了一个style的标签(第一个红线),然后再style标签中赋予新的属性和值,如果第一个赋值我可以用等于,但是其后的赋值我必须要用加等于才能让前面的赋值不会被覆盖,等于是做了一个累加操作,(后面的三四根红线是+=,第二根是等于),那为什么第一种图片的变量a最后的值是多次累加后的值,而第二种的是累加且依次展现,这个+=的累加逻辑是怎么表达的?
问题解答
回答1:第一个是数字累加,第二个累加相当于拼接字符串,你可以换成模板字符串的方式,处理起来比较方便,如下所示。
var cssNode=document.createElement(’style’);var middle=’b’;cssNode.innerHTML=’a’;cssNode.innerHTML+= `--- ${middle}----`;cssNode.innerHTML+=’c’;console.log(cssNode.innerHTML);//输出: a--- b----c回答2:
第一种是数字,+ 相当于加法。
第二种是字符串,+ 相当于连接。
回答3:没太懂你想表达什么,就最后一句话的回答:a+=b就相当于a = a + b
回答4:cssNode.innerHtml += “...”; 等同于cssNode.innerHtml = cssNode.innerHtml +'...'。而每次改变innerHtml都会重发html元素的重绘(严格的说,包括重排和重绘,对应的英文reflow和repaint)这就是问什么依次展现
如果想最终展现一次,就定义一个变量例如myInnerHtml,对它做+=操作,最后给cssNode.innerHtml = myInnerHtml
回答5:先定义一个字符数变量,最后再赋值给innerHtml
相关文章:
1. 文本处理 - 求教使用python库提取pdf的方法?2. html5 - 百度echart官网下载的地图json数据乱码3. JAVA 版本问题?4. python - 有没有关于Pyhton web开发的相关论坛或者书?5. 这是什么情况???6. python - Pycharm的Debug用不了7. javascript - 想问下百分比进度条实现原理以及这种布局怎么实现,还有赛马时背景跟着动的原理?8. javascript - Vue.js2.0不能使用debounce后大伙一般是如何解决延迟请求的问题的呢。9. java - svn导下来的项目,web-inf下怎么没有lib文件呀?10. javascript - 单个页面执行多个jsonp的ajax请求,如何判断一个ajax请求执行完毕执行再另一个?
