javascript - jQuery for(x in y) 循环

标签 javascript jquery

在下面的代码中,变量“key”没有大写,即使任何其他变量(例如 steve[j])在替换“key”时都会大写"在对函数 capitaliseFirstLetter() 的调用中。

有人能告诉我为什么吗?

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)

关于javascript - jQuery for(x in y) 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24801270/

相关文章:

javascript - Javascript 中可以在变量名中使用变量吗?

javascript - 如何使用JS或jQuery来触发React 16的模拟更改和输入事件?

javascript - 如何添加无限数量的文本框

javascript - 检查 WebSQL 数据库时 Google Chrome 卡住

jquery - IOS4清除缓存错误?!与 "Add to Home Screen"应用程序和 localStorage

javascript - 创建一个外部 html 页面数组并将其放入多个 div 中

jquery - html 链接呈现在页面上,但表现得好像它不存在

javascript - 无法从异步函数检索返回的对象

javascript - 谷歌应用脚​​本: Cannot find function insertText in object Document

javascript - jquery 下一个 sibling