我正在为有关字符串原型方法的问题而痛苦。
我想创建一个方法来驼峰处理任何字符串。
这是我当前的代码:
String.prototype.camelCase=function(){
let wordsArray = this.split(" ")
wordsArray.forEach((word)=>{
word[0] == word[0].toUpperCase()
})
}
当我console.log(word [0] .toUpperCase())时,我得到每个单词的大写字母,但是当我尝试将转换应用于我的“单词”时,出现错误“无法读取属性' toUpperCase'的定义为“
wtf吗?
答案 0 :(得分:4)
解决字符串不变性的一种方法是,仅返回具有所需内容的新字符串,如下所示:
String.prototype.camelCase = function() {
return this
.split(" ")
.map(w => {
if (!w) return w
return w[0].toUpperCase()+w.substring(1)
})
.join(' ')
}
console.log('hello world'.camelCase())