在Javascript中使用for循环生成camel case函数

在Javascript中使用for循环生成camel case函数,javascript,Javascript,我是Javascript的新手,正在尝试找出如何通过使用for循环对任何字符串进行大小写转换。这就是我目前所拥有的 function camelCase(str) { var splitStr = ""; var result = ""; splitStr = str.split(" "); for(var i = 0; i < splitStr.length; i++){ result += splitStr[i][0].toUpperCase() + splitSt

我是Javascript的新手,正在尝试找出如何通过使用for循环对任何字符串进行大小写转换。这就是我目前所拥有的

function camelCase(str) {
 var splitStr = "";
 var result = "";

 splitStr = str.split(" ");
 for(var i = 0; i < splitStr.length; i++){
 result += splitStr[i][0].toUpperCase() + 
   splitStr[i].slice(1);
  }
  return result;
 }

console.log(camelCase("hello there people"));
函数camelCase(str){
var splitStr=“”;
var结果=”;
splitStr=str.split(“”);
对于(变量i=0;i

它返回“HelloTherePeople”-我如何使splitStr的第一个索引(splitStr[0][0])从toUpperCase中排除,但仍包含在字符串的开头?

如下更改返回:

return result[0].toLowerCase()+result.substr(1);

你的分隔符是什么?此方法采用下划线
。如果需要空间,请将其更改为空间。或者将其设置为可以传递给camelize的变量

if( !String.prototype.camelize )
    String.prototype.camelize = function(){
        return this.replace(/_+(.)?/g, function(match, chr) {
            return chr ? chr.toUpperCase() : '';
        });
    }

"a_new_string".camelize()
//"aNewString"
regex
/+()?/g/
表示查找1个或多个
字符,后跟任何字符
()
创建一个捕获组,因此您可以获取该字符。它作为第二个参数
chr
传递给函数。
表示不贪婪,因此它将在下一个
处停止。
g
意味着全局查找,几乎意味着查找所有匹配项


String.prototype.replace

您可以在循环内部进行检查,查看是否在第一个索引上

函数camelCase(str){
//splitStr将是一个数组
var splitStr=[];
var结果=”;
splitStr=str.split(“”);
//将单词的第一个字母大写,从第二个字母开始
对于(变量i=0;ilog(camelCase(“大家好”)即使它有效,也不会“驼峰大小写任何字符串”。只有带空格的字符串如果要使用不带空格的CamelCase,则需要字典!进行转换,然后将第一个字符转换回小写。