想知道为什么我的左手边配置无效。不是我的for循环遍历字符串字符数组,得到它的数值(ASCII)并将其添加到count并重新分配给变量?
function getCharNumber(string1, string2) {
let count1 = 0
let count2 = 0
let strArray1 = string1.split('')
let strArray2 = string2.split('')
for (let i = 0; i < strArray1.length; i++) {
strArray1[i].charCodeAt(0) += count1
}
for (let i = 0; i <strArray2.length; i++) {
strArray2[i].charCodeAt(0) += count2
}
console.log(count1, count2)
}
答案 0 :(得分:2)
在致电String.prototype.charCodeAt()
时撤消订单。将调用结果分配给count1
,count2
for (let i = 0; i < strArray1.length; i++) {
count1 += strArray1[i].charCodeAt(0);
}
for (let i = 0; i <strArray2.length; i++) {
count2 += strArray2[i].charCodeAt(0);
}
答案 1 :(得分:0)
您收到错误,就像其他人所说的那样,因为您正在尝试为数字指定值。
strArray1[i].charCodeAt(0) += count1
在功能上等同于
12 += count1
这不起作用b / c您无法为数字12
指定任何内容。相反,你需要直接增加
strArray1[i] = String.fromCharCode(strArray1[i].charCodeAt(0) + count1)