Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将每个字符串的第一个字母大写_Javascript - Fatal编程技术网

Javascript 将每个字符串的第一个字母大写

Javascript 将每个字符串的第一个字母大写,javascript,Javascript,我一直试图将字符串中每个单词的第一个字母大写,但它显示TypeError:无法分配给字符串“I”的只读属性“0”。我的逻辑看起来不错,但我这样做肯定不对。任何建议 功能滴定酶(str){ str=str.toLowerCase(); var word=str.split(“”); //console.log(word[0][0]); for(var i=0;i{m=m+“”+o;返回m},“”) 控制台日志(res)您可以使用map函数创建一个修改过的单词数组,并使用join重新创建字符串

我一直试图将字符串中每个单词的第一个字母大写,但它显示
TypeError:无法分配给字符串“I”的只读属性“0”
。我的逻辑看起来不错,但我这样做肯定不对。任何建议

功能滴定酶(str){
str=str.toLowerCase();
var word=str.split(“”);
//console.log(word[0][0]);
for(var i=0;ititleCase(“我是一个小茶壶”)通过内置的数组函数,您可以直接将字符串转换为所需内容。
使用map函数,您将直接获得它,无需运行for循环

("I'm a little tea pot")
.split(" ")
.map(function(d){
 return d[0].toUpperCase()+d.substring(1,d.length)
}).join(" ")
尝试这样做:(参见代码中的注释)

功能滴定酶(str){
str=str.toLowerCase();
var word=str.split(“”);
对于(var i=0;ititleCase(“我是一个小茶壶”)
您可以组合
拆分
映射
功能来实现这一点

功能滴定酶(str){
返回str.toLowerCase().split(“”).map(函数(word){
var_word=word.split(“”);
_word[0]=\u word[0]。toUpperCase();
返回_word.join(“”);
}).加入(“”);
}

log(titleCase(“我是一个小茶壶”)带有拆分、数组映射和缩减:

var str=“我是一个小茶壶”;
var res=str.split(“”)
.map(word=>word.charAt(0.toUpperCase()+word.substr(1))
.reduce((m,o)=>{m=m+“”+o;返回m},“”)

控制台日志(res)
您可以使用
map
函数创建一个修改过的单词数组,并使用
join
重新创建字符串

功能滴定酶(str){
str=str.toLowerCase();
var word=str.split(“”);
var x=word.map(函数(项){
返回item.charAt(0.toUpperCase()+item.substring(1,item.length);
}).加入(“”);
返回x
}
log(titleCase(“我是一个小茶壶”)字符串具有接受函数的替换方法:

var s='foo-bar-fum我是斯巴蒂克斯23!!';

log(s.replace(/\b\w/g,函数{返回s.toUpperCase()}))
如果您不是按字符付费,请尝试
s.replace(/\b\w/g,s=>s.toUpperCase())
。slice(1)的作用是什么?@AhsanAlii在这种情况下,它将删除第一个字母(小写字母),该字母与大写字母一起添加。