我有一个函数,假设大写下一个单词的第一个字母。 “这是一个!测试。” 是理想的结果。
var splitUp = ["this", "is", "a!", "test."];
只有在运行“if”语句时,我才会在“for循环”中增加变量。
if (punctuation.indexOf(translationString[iii]) != -1) {
console.log(iii+ ": " +translationString[iii]);
console.log("iii is on: " + iii);
iii + 2;
console.log("after increment, iii is on: " + iii);
translationString[iii].toUpperCase();
}
我无法弄清楚“iii”的价值没有增加的原因。有工作吗或我完全错过了什么?
答案 0 :(得分:0)
您必须将值分配回变量:
//What you're doing:
iii + 2 // The value of iii + 2. Won't update iii
//What you want to do:
iii += 2 // assign the value of iii + 2 back into your iterator.
在你发布的例子中,你只是简单地给计算机一些数学计算:iii + 2.它会使iii + 2运行并继续前进;基本上它是一个无操作。
+ =运算符是右侧增加左侧的简写。
即。 iii + = 2相当于iii = iii + 2
答案 1 :(得分:0)
iii + 2; //这只会为新分配的值增加2,也就是说,它会是这样的:
var iii = 1;
var other = iii + 2; //其他的值现在为3(1 + 2)
要增加,必须使用增量运算符:
iii ++; //每次增加iii的值
iii + = 2或iii = iii + 2; //每次增加iii 2的值,也就是说,它将是2,4,6,8 ......
select name, id, state, stateID, region, SUM(sales) AS sales
from table1 taba
left join table2 tabb
on taba.state = tabb.state
left join table3 tabc
on tabb.stateid = tabc.stateid
GROUP BY name, id, state, stateID, region
var splitUp = ["this", "is", "a!", "test."];
if (punctuation.indexOf(translationString[iii]) != -1) {
console.log(iii+ ": " +translationString[iii]);
console.log("iii is on: " + iii);
iii += 2;
console.log("after increment, iii is on: " + iii);
translationString[iii].toUpperCase();
}
function capitalizeFirstLetter(string)
{
return string.charAt(0).toUpperCase() + string.slice(1);
}