js最实用string(字符串)类型的使用及截取与拼接详解


Posted in Javascript onApril 26, 2019

var a = '世界上最远的距离不是天涯海角';

一、通过字符获取位置或通过位置获取字符:

//指定位置返回字符
console.log(str.charAt(1));
console.log(str[1]);
//指定位置返回字符编码
console.log(str.charCodeAt(1));
 
//返回字符串位置
console.log(str.indexOf("o"));//不存在返回-1
console.log(str.lastIndexOf("o"));

在浏览器中执行结果如下:

假如现在有个变量:

var a = '世界上最远的距离不是天涯海角';

var b = '最远的距离';

现在想动态获取到变量b之前的字符串,和变量之后的字符串,则可以这样

1.利用slice获取到之前的字符串;

2.获取到变量b的长度,在b初始位置后加上b的长度,及从b的尾部截取a的长度(当然a当长度可以省略!);

二、拼接字符串:

一般有两种:

a.直接用“+”;

b.concat函数

三、切割方法

console.log(str.slice(3,7));//开始、结束(有开始、有结束)
console.log(str.substring(3,7));//开始、结束(有开始、有结束)
console.log(str.substr(3,7));//开始、长度(有开始、无结束、有长度)
 
console.log(str.slice(-3,-2));//第一个负值与长度相加,第二个负值与长度相加
console.log(str.substring(3,-1));//第一个负值转换为0,第二个负值转换为0,如果开始大于结束,则对调
console.log(str.substr(-3,-1));//第一个负值与长度相加,第二个负值转换为0

下面看个例子:

var type可为dir/file

if (type !== 'dir' && name.indexOf('.') !== -1) {//file
 basename=name.substr(0,name.lastIndexOf('.'));
 extension=name.substr(name.lastIndexOf('.'));
} else {//dir
 basename=name;
 extension=false;
}


//中文

四、去掉前后空格

var strValue = " hello world! ";
var trimedStrValue = strValue.trim();
console.log(strValue);
console.log(trimedStrValue);

五、大小写转换方法

var strLowUp = "HELLO world!";
console.log(str.toLowerCase());
console.log(str.toUpperCase());
console.log(strLowUp);

六、与模式有关的方法,调用者为字符串,参数为模式(正则对象或正则表达式或字符串)

1、匹配方法,本质上与调用RegExp的exec()方法相同(调用者为正则表达式或正则对象,参数为字符串)
 //返回数组对象,第一项为匹配到的字符串,其它项为捕获组匹配到的字符串
//返回对象同时具有index和input属性,index为匹配到字符串的索引,input为进行匹配的字符串str

 2、查询/搜索方法
 //返回值为匹配字符的索引,如未查询到则返回-1

 search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。

3、替换方法,两个参数,用参数二替换参数一,参数一为字符串或正则表达式,参数二为字符串或函数

a. //正则

b. 字符串

c. 函数

//如果第二个参数是函数
//函数接收的参数为:匹配到的子字符串、
  第一个捕获组匹配到的子字符串、
  第二个捕获组匹配到的子字符串...、模式匹配项的索引、原始字符串
var repStr = str.replace(/at/g,function(match,index,input){
console.log(match);//at
console.log(index);//
console.log(input);//cat,bat,sat,fat
return "an";
});
 
console.log(repStr);//can,ban,san,fan

4、分割方法,将字符串按照指定的分隔符分割为多个子字符串

//返回值为存放多个子字符串的数组
var str = "red,blue,green,yellow";
var strArray = str.split(",");
var strArray = str.split(/[^\,]+/);//匹配所有不是逗号字符作为分隔符
console.log(strArray);//["red", "blue", "green", "yellow"]
 
//第二个参数用于控制数组的长度
var strArray = str.split(",",2);
console.log(strArray);//["red", "blue", "green", "yellow"]

七、比较方法,返回值为1(>0)、0、-1(<0)

var strValue = "yellow";
console.log(strValue.localeCompare("brick"));//>0
console.log(strValue.localeCompare("yellow"));//0
console.log(strValue.localeCompare("zoo"));//<0

以上所述是小编给大家介绍的js string使用截取与拼接详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jquery阻止冒泡事件使用模拟事件
Sep 06 Javascript
禁止ajax缓存获取程序最新数据的方法
Nov 19 Javascript
jquery实现背景墙聚光灯效果示例分享
Mar 02 Javascript
JS实现当前页居中分页效果的方法
Jun 18 Javascript
使用ngView配合AngularJS应用实现动画效果的方法
Jun 19 Javascript
Jquery ajax加载等待执行结束再继续执行下面代码操作
Nov 24 Javascript
用js实现简单算法的实例代码
Sep 24 Javascript
一个Js文件函数中调用另一个Js文件函数的方法演示
Aug 14 Javascript
vue-scroller记录滚动位置的示例代码
Jan 17 Javascript
在vue项目中使用element-ui的Upload上传组件的示例
Feb 08 Javascript
JavaScript实现的滚动公告特效【基于jQuery】
Jul 10 jQuery
js实现整体缩放页面适配移动端
Mar 31 Javascript
微信小程序实现的绘制table表格功能示例
Apr 26 #Javascript
Vue使用Canvas绘制图片、矩形、线条、文字,下载图片
Apr 26 #Javascript
微信小程序如何修改本地缓存key中单个数据的详解
Apr 26 #Javascript
js验证身份证号码记录的方法
Apr 26 #Javascript
详解VScode编辑器vue环境搭建所遇问题解决方案
Apr 26 #Javascript
react高阶组件添加和删除props
Apr 26 #Javascript
详解微信小程序-canvas绘制文字实现自动换行
Apr 26 #Javascript
You might like
定制404错误页面,并发信给管理员的程序
2006/10/09 PHP
php explode函数实例代码
2012/02/27 PHP
php缓存技术详细总结
2013/08/07 PHP
PHP中几个可以提高运行效率的代码写法、技巧分享
2014/08/21 PHP
Codeigniter购物车类不能添加中文的解决方法
2014/11/29 PHP
jQuery EasyUI 中文API Layout(Tabs)
2010/04/27 Javascript
Web前端设计模式  制作漂亮的弹出层
2010/10/29 Javascript
jQuery 联动日历实现代码
2012/05/31 Javascript
jquery点击页面任何区域实现鼠标焦点十字效果
2013/06/21 Javascript
用jquery中插件dialog实现弹框效果实例代码
2013/11/15 Javascript
javascript制作的网页侧边弹出框思路及实现代码
2014/05/21 Javascript
Jquery之Bind方法参数传递与接收的三种方法
2014/06/24 Javascript
用console.table()调试javascript
2014/09/04 Javascript
jquery搜索框效果实现方法
2015/01/16 Javascript
JavaScript中Function函数与Object对象的关系
2015/12/17 Javascript
巧用Vue.js+Vuex制作专门收藏微信公众号的app
2016/11/03 Javascript
JavaScript面向对象精要(上部)
2017/09/12 Javascript
JavaScript RegExp 对象用法详解
2019/09/24 Javascript
angular8和ngrx8结合使用的步骤介绍
2019/12/01 Javascript
[03:35]2018年度DOTA2最佳辅助位选手5号位-完美盛典
2018/12/17 DOTA
对Python进行数据分析_关于Package的安装问题
2017/05/22 Python
Python人脸识别初探
2017/12/21 Python
python实现m3u8格式转换为mp4视频格式
2018/02/28 Python
Python安装并操作redis实现流程详解
2020/10/13 Python
Python模拟登录requests.Session应用详解
2020/11/17 Python
记一次python 爬虫爬取深圳租房信息的过程及遇到的问题
2020/11/24 Python
python3.9实现pyinstaller打包python文件成exe
2020/12/13 Python
用Python 执行cmd命令
2020/12/18 Python
副总经理任命书
2014/06/05 职场文书
民间个人借款协议书
2014/09/30 职场文书
2015年试用期工作总结范文
2015/05/28 职场文书
告知书格式
2015/07/01 职场文书
2016教师廉洁教育心得体会
2016/01/13 职场文书
Java框架入门之简单介绍SpringBoot框架
2021/06/18 Java/Android
在redisCluster中模糊获取key方式
2021/07/09 Redis
Windows server 2016服务器基本设置
2022/08/14 Servers