内置对象String及String的常用操作

本文介绍了JavaScript中字符串处理的一些实用技巧,包括如何将连字符分隔的字符串转换为驼峰式命名,解析URL参数并将其转化为对象,以及如何清除字符串两端的空白字符。

学习String的属性和方法

1、String对象的属性和方法

2、连字符式变量形式转为驼峰式

原理:切分之后除第一个的每部分首字母改为大写。

注意:

split():stringObject.split(separator,howmany),split() 方法用于把一个字符串分割成字符串数组,前一个参数制定分隔符,后一个参数制定生成的数组的最大长度(一般省略)。

charAt(): charAt() 方法可返回指定位置的字符。stringObject.charAt(index)

toUpperCase(): toUpperCase() 方法用于把字符串转换为大写。stringObject.toUpperCase() ,对一个字符串全部转为大写(如果没指定位置的话)。对应的方法:toLowerCase() 方法用于把字符串转换为小写,用法一样。

substr(): stringObject.substr(start,length),substr() 方法可在字符串中抽取从 start 下标开始的指定数目(length)的字符。substr() 的参数指定的是子串的开始位置和长度,因此它可以替代 substring() 和 slice() 来使用。

substring:stringObject.substring(start,stop),substring() 方法用于提取字符串中介于两个指定下标之间的字符。substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数。

slice(): stringObject.slice(start,end),slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。String 对象的方法 slice()、substring() 和 substr() (不建议使用)都可返回字符串的指定部分。slice() 比 substring() 要灵活一些,因为它允许使用负数作为参数slice() 与 substr() 有所不同,因为它用两个字符的位置来指定子串,而 substr() 则用字符位置和长度来指定子串。还要注意的是,String.slice() 与 Array.slice() 相似。

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);

3、解析url

原理:一直分割,然后赋值给对象。

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);

4、清除字符串前后的空格

原理:原生trim()方法,该方法会创建一个字符串的副本,删除前置及后缀的所有空格,然后返回结果。

//兼容性trim()
if(!String.prototype.trim){
    String.prototype.trim = function(){
        return this.replace(/^s+/,"").replace(/\s+$/,"");
    }
}
//test
console.log("     dfsdf   dsfdsf    ".trim());

转载于:https://www.cnblogs.com/changyangzhe/p/5727430.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值