原理:切分以后除第一个的每部分首字母改成大写。数组
注意:学习
split():stringObject.split(separator,howmany),split() 方法用于把一个字符串分割成字符串数组,前一个参数制定分隔符,后一个参数制定生成的数组的最大长度(通常省略)。this
charAt(): charAt() 方法可返回指定位置的字符。stringObject.charAt(index)url
toUpperCase(): toUpperCase() 方法用于把字符串转换为大写。stringObject.toUpperCase() ,对一个字符串所有转为大写(若是没指定位置的话)。对应的方法:toLowerCase() 方法用于把字符串转换为小写,用法同样。spa
substr(): stringObject.substr(start,length),substr() 方法可在字符串中抽取从 start 下标开始的指定数目(length)的字符。substr() 的参数指定的是子串的开始位置和长度,所以它能够替代 substring() 和 slice() 来使用。prototype
substring:stringObject.substring(start,stop),substring() 方法用于提取字符串中介于两个指定下标之间的字符。substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。若是参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。若是 start 比 stop 大,那么该方法在提取子串以前会先交换这两个参数。与 slice() 和 substr() 方法不一样的是,substring() 不接受负的参数。code
slice(): stringObject.slice(start,end),slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。String 对象的方法 slice()、substring() 和 substr() (不建议使用)均可返回字符串的指定部分。slice() 比 substring() 要灵活一些,由于它容许使用负数做为参数。slice() 与 substr() 有所不一样,由于它用两个字符的位置来指定子串,而 substr() 则用字符位置和长度来指定子串。还要注意的是,String.slice() 与 Array.slice() 类似。htm
var foo = "get-element-by-id"; function combo(str){ var arr = str.split("-"); for(var i=1,len=arr.length;i<len;i++){ arr[i] = arr[i].charAt(0).toUpperCase()+arr[i].substr(1,arr[i].length-1); } return arr.join(""); } combo(foo);
原理:一直分割,而后赋值给对象。对象
var urlStr = "https://item.taobao.com/item.htm?spm=a217x.7282709.1997523041.2.6i95Qv&id=524219158382&scm=13003.1.5287000.9b57ece9a7c9199d0e4edf1c17873045"; function serilizeUrl(str){ var result = {}; var _url = str.split("?")[1]; _url = _url.split("&"); for(var i = 0,len = _url.length;i<len;i++){ var _m = _url[i].split("="); result[_m[0]] = _m[1]; } return result; } serilizeUrl(urlStr);
原理:原生trim()方法,该方法会建立一个字符串的副本,删除前置及后缀的全部空格,而后返回结果。blog
//兼容性trim() if(!String.prototype.trim){ String.prototype.trim = function(){ return this.replace(/^s+/,"").replace(/\s+$/,""); } } //test console.log(" dfsdf dsfdsf ".trim());