jQuery for(x in y) loop
jQuery for(x in y) loop
在下面的代码中,变量" key
"不大写,即使任何其他变量,如steve[j],如果它们在调用函数capitaliseFirstLetter()
中替换" key
",则大写。
谁能告诉我为什么?
for(key in aray) {
steve = aray[key];
for(j = 0; j < steve.length; j++){
diff = steve[j].slice(key.length);
if(diff == ""){
diff = "_";
}
diffs.push(diff);
var firstLetterUpper = /^[A-Z]/.test(steve[j]);
if(firstLetterUpper){
capitaliseFirstLetter(key)
alert(key])
}
}
}
function capitaliseFirstLetter(string){
return string.charAt(0).toUpperCase() + string.slice(1);
}
key = capitaliseFirstLetter(key)
alert(key)
字符串对象按值传递给函数。所以它不会改变你应该重新设计value
如果你的目的是把每个单词都大写,可以更简单地这样做:
JSFiddle: http://jsfiddle.net/UgT3x/
for (key in aray) {
var steve = aray[key];
console.log(toTitleCase(steve));
// if you want to change the aray value
aray[key] = toTitleCase(steve);
}
function toTitleCase(str) {
return str.replace(/'w'S*/g, function (txt) {
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
});
}
相关文章:
- jQuery setTimeOut: in for-loop
- 用于JavaScript中的In Loop用途
- Understanding For-in Loop
- setTimeout in jQuery with a loop
- Loop Wordpress Articles in Polymer
- Javascript jquery fade-in/fadeout loop,如何使用计时器
- javascript for in loop returning undefinded
- JavaScript: Promise chaining in foreach loop
- Javascript Logic In a loop/if statement
- JavaScript addEventListener in loop
- ParseQuery in a For Loop from array items
- .push breaking in for loop
- setTimeout with Loop in JavaScript
- 将存储在数组中的 url 传递给 window.open in for loop - Javascript
- jQuery append in loop - DOM 直到最后才更新
- jQuery.animate() in a for loop
- Async AjaxCall in a for loop Javascript
- Javascript 'var variable' in loop vs out out.性能上的任何差异
- Grunt Run in a For Loop
- 使用PHP Curl、Jquery In Loop获取多个url数据