你要明白2个赋值语句的区别
var name = (equals) 设置你想要的值
var name = "blaqkippah"
console.log(name)
blaqkippah
var age = 23
console.log(age)
23
(你已经声明了变量name,所以不需要再用var关键字声明)
var name = "blaqkippah"
console.log(name)
blaqkippah
+= 如何与字符串一起工作是它连接它们
这是一种更短的写作方式
name = name + "blah"
name += "deemyBoy"
console.log(name)
blaqkippahdeemyBoy // no space inserted as I wrote += "deemyBoy" not += " deemyBoy"
ie. when joining 2 strings using += (or any other method) you have to manually add a
space
var b = 'banana'
b
"banana"
b += ' apple'
"banana apple"
b
"banana apple"
b = 'apple'
b
"apple"
数字表现不同 += 成为加/加运算符添加到已存储在 b 中的内容
(对于数字,您也可以使用 -=(减号)、*=(乘)和 /=(除)
b = 2
console.log(b)
2
b += 3
console.log(b)
5
b = 4
console.log(b)
4
减号
b-=3
console.log(b)
1
除法
b /= 2
console.log(b)
0.5
相乘
b *= 50
console.log(b)
25
回到您的问题我使用了一个 js 对象,因此 innerHTML 成为该对象的一个属性,您可以在 console.logs 中轻松看到该值的变化
var btn = {} // decalre empty js object
undefined
btn.innerHTML = '<i class="fas fa-times fa-lg"></i>'; // assign value
console.log(btn)
{innerHTML: "<i class="fas fa-times fa-lg"></i>"}
btn.innerHTML += '<i class="fas fa-times fa-lg"></i>';
console.log(btn);
{innerHTML: "<i class="fas fa-times fa-lg"></i><i class="fas fa-times fa-lg"></i>"}
btn.innerHTML = '<i class="fas fa-times fa-lg">go back to original</i>';
console.log(btn);
{innerHTML: "<i class="fas fa-times fa-lg">go back to original</i>"}
我希望这是一个更彻底的解释