当前位置: 首页 > news >正文

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

学习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

相关文章:

  • Java提高篇——单例模式
  • 致远力推协同运营中台,赋能数字化升级
  • 文件属性权限及其权限设置
  • 关于ORACLE的SQL语句拼接、替换、截取、排序,联表等...~持续汇总~
  • Python语言学习 (三)1.1
  • windows服务器上面创建定时任务
  • mybatis整合ehcache
  • mac显示隐藏文件
  • 谈谈持续集成,持续交付,持续部署之间的区别
  • 揭秘 DockerCon 重量级演讲嘉宾(六)
  • 纠结的链接:ln、ln -s、fs.symlink、require
  • 配置DHCP
  • org.springframework.dao.InvalidDataAccessApiUsageException: The given object has a null identifier:
  • js中继承的几种实现方式
  • 存储过程和函数
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 【刷算法】从上往下打印二叉树
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • CentOS7 安装JDK
  • CSS实用技巧干货
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • Vue实战(四)登录/注册页的实现
  • Vue组件定义
  • 两列自适应布局方案整理
  • 如何使用Mybatis第三方插件--PageHelper实现分页操作
  • 用element的upload组件实现多图片上传和压缩
  • 自定义函数
  • hi-nginx-1.3.4编译安装
  • 东超科技获得千万级Pre-A轮融资,投资方为中科创星 ...
  • 正则表达式-基础知识Review
  • #传输# #传输数据判断#
  • (13)Hive调优——动态分区导致的小文件问题
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (39)STM32——FLASH闪存
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (十五)使用Nexus创建Maven私服
  • (四)Linux Shell编程——输入输出重定向
  • (学习日记)2024.01.09
  • (转)3D模板阴影原理
  • (转)Windows2003安全设置/维护
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • **python多态
  • *p++,*(p++),*++p,(*p)++区别?
  • . Flume面试题
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .net 桌面开发 运行一阵子就自动关闭_聊城旋转门家用价格大约是多少,全自动旋转门,期待合作...
  • .NET设计模式(7):创建型模式专题总结(Creational Pattern)
  • .Net下的签名与混淆
  • .pyc文件还原.py文件_Python什么情况下会生成pyc文件?
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @德人合科技——天锐绿盾 | 图纸加密软件有哪些功能呢?
  • [ vulhub漏洞复现篇 ] Django SQL注入漏洞复现 CVE-2021-35042
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码