JavaScript字符串常用的方法


Posted in Javascript onMarch 10, 2016

获取类:

1)动态方法:

charAt : 获取字符串指定位置上的字符。(参数:一个,指定要获取的字符位置)

1,不接受负数,如果为负数,会返回一个空字符串。

2,如果不给参数,默认是获取第0位置上的字符。

3,只接收一个参数。

charCodeAt : 获取字符串中指定位置上字符的Unicode编码(参数: 一个,指定要获取字符编码的字符位置)

1,任何字符都有一个唯一的字符编码。

2,只接收一个参数。

常用:

数字 : 48 ~ 57

下划线 : 95

空格 : 32

制表符 : 9

小写字母 :97 ~ 122

大写字母 : 65 ~ 90

2)静态方法:

fromCharCode : 根据指定的字符编码返回对应的字符。(参数: 任意多个)

1,可以接收多个参数。

2,写法是固定的(静态方法):String.fromCharCode(); //字符编码有效范围 : 0 ~ 65535 String是字符串的对象

var str = '我是字符串';
alert( str.charAt( ) ); //'' 如果本身长度只有,却找str.charAt() 找不到也是空字符串'',~str.length-是合法范围。
alert( str.charAt( ) ); //'我' 默认不写是,找到第一个字符
alert( str.charAt() ); // '字'
alert( ''.charAt( ) ); //
alert( ''.charAt(,) ); //
alert( str.charCodeAt( ) );// unicode编码
alert( ''.charCodeAt() ); // 
alert(String.fromCharCode( ,)); //'字味' 根据编码转换成字符(静态方法)多个字符用 , 隔开

查找类:

indexOf : 查找指定的子字符串在字符串中第一次出现的位置。(第一个参数,指定要查找的子字符串;第二个参数指定开始查找的位置。)

1,从前往后查找,默认从第0位置开始。

2,如果找到了,就返回第一次被查找到的位置,如果没有找到,就返回 -1。

3,如果第二个参数为负数,默认当成0来处理

lastIndexOf : 查找指定的子字符串在字符串中最后一次出现的位置。(第一个参数,指定要查找的子字符串;第二个参数指定开始查找的位置。)

1,从后往前查找,默认从第 length - 1 位置开始。

2,如果找到了,就返回第一次被查找到的位置,如果没有找到,就返回 -1。

var str = 'www.baidu.com/';
alert(str.indexOf('bai')); // 从左往右找找到一个就返回不会再往右找了
alert(str.indexOf('m',)) // 从第位开始向右找
alert(str.indexOf('X')) //- 不存在的话结果是 - 表示没找到
alert(str.lastIndexOf('ww')); //

截取类:

substring : 提取指定范围的一段子字符串。(第一个参数,指定要提取的开始位置;第二个参数,指定要提取的结束位置。)

1,提取范围包括开始位置,但是不包括结束位置。

2,可以省略第二个参数,表示从开始位置提取到字符串结束

3,在提取之前会先比较两个参数的大小,然后按从小到大的顺序调整参数位置,再提取。

4,所有的非法参数都会自动转化成0.

5,如果不给参数,默认直接返回整个字符串。

slice : 提取指定范围的一段子字符串。(第一个参数,指定要提取的开始位置;第二个参数,指定要提取的结束位置。)

1,提取范围包括开始位置,但是不包括结束位置。

2,可以省略第二个参数,表示从开始位置提取到字符串结束

3,不会比较两个参数的位置,更不会调整位置的位置

4,参数可以是正数,也可以是负数,其它所有非法参数都会转换成0。

5,负数表示从字符串的后面往前数字符位置,最一个字符的位置是 -1。

var str = '我是字符串';
alert(str.substring()); //'我是字符串'
alert(str.substring(-,)); //'我'
alert(str.substring()); //字符串
alert(str.substring(,)); //'我是' 与str.substring(,)是一样的。可以检测两个数,大的往后仍,小的往前仍。负数当成来处理。
alert(str.slice(,)); //空白 找不到,不交换位置
alert(str.slice(-)); //'符串' 负数就是从后面倒着往前数

比较类:

alert(‘我'>'你'); //true 字符串比较就比较第一个字符对应的Unicode值大小,后边的就不比较了。

其他类:

alert(str.length); //获取字符串长度

split() //把字符串切成数组

参数: 一个 指定一个分割符用来分割字符串。

1,如果不指定分割符,就不会分割,直接存入数组。

2,以分割符为依据,把分割符左右两边的值分别存入数组。

3,分割符本身不会存入数组。

4,分割符只能是字符串中存在的子字符串。

5,在split看来,两个字符之间必须依靠空字符串连接。

6,当用空字符串去分割空字符串的时候,会得到一个空数组。

var str = '';
alert( typeof str ); //string
alert( typeof str.split() ); //object
alert( str.split().length ); //['']
alert( str.split('') ); //['','']
alert( str.split('a') ); //['']
alert( str.split('') ); //['','']
alert( str.split('').length ); //['','','','']
alert( str.split('') ); //['','','','']
//'' 由五个 '' 加 四个字符组成
alert( str.split('') );//['','']
alert( str.split('') ); //['','']
alert( ''.split(' ').length ); //['']
alert( ''.split('').length ); //[]
//特例,只有这种情况下 split 才会返回空数组。

trim() : 去除字符串首尾的所有空格。(字符串中间的空格会保留)。

html5的新方法,低版本浏览器不支持。

toUpperCase() : 把字符串全部转换成大写。(没有参数)

toLowerCase() : 把字符串全部转换成小写。(没有参数)

最后,所有的字符串方法,都不会修改字符串本身。

javascript字符串连接类

在我们写前端的js时,经常会出现将很多的字符串通过“+”拼接起来,然后挂载的某个DOM元素上。然而关于使用“+”来拼接字符串,在各浏览器下解析的效果,我就在此不做对比了,网上这类的对比很多。很多牛人都说通过使用js中的Array的join方法来拼接字符串效果很不错。为此在项目中写一个js类,用来统一处理字符串的拼接。

代码

//自定义的一个字符串连接类,用于拼接字符串,比"+"要提升性能function StringBuffer()
{ 
this._strs = new Array(); 
}StringBuffer.prototype.append = function(str)
{ 
this._strs.push(str); 
};StringBuffer.prototype.arrayToString = function() 
{ 
return this._strs.join(""); 
};

而我们在使用该类时,可以直接通过如下方法:

var strBuff=new StringBuffer();strBuff.append("hello,");strBuff.append("Welcome to Javascript!");alert(strBuff.arrayToString());
Javascript 相关文章推荐
获取URL地址中的文件名和参数的javascript代码
Sep 02 Javascript
JavaScript.The.Good.Parts阅读笔记(二)作用域&闭包&减缓全局空间污染
Nov 16 Javascript
jQuery控制图片的hover效果(smartRollover.js)
Mar 18 Javascript
基于mouseout和mouseover等类似事件的冒泡问题解决方法
Nov 18 Javascript
javascript移出节点removeChild()使用介绍
Apr 03 Javascript
JavaScript中的return语句简单介绍
Dec 07 Javascript
三种AngularJS中获取数据源的方式
Feb 02 Javascript
使用递归遍历对象获得value值的实现方法
Jun 14 Javascript
JS实现刷新父页面不弹出提示框的方法
Jun 22 Javascript
使用vue实现简单键盘的示例(支持移动端和pc端)
Dec 25 Javascript
laypage.js分页插件使用方法详解
Jul 27 Javascript
mui js控制开关状态、修改switch开关的值方法
Sep 03 Javascript
javascript中call apply 与 bind方法详解
Mar 10 #Javascript
angularjs表格ng-table使用备忘录
Mar 09 #Javascript
详解AngularJS控制器的使用
Mar 09 #Javascript
JQuery Mobile实现导航栏和页脚
Mar 09 #Javascript
javascript基本算法汇总
Mar 09 #Javascript
javascript时间排序算法实现活动秒杀倒计时效果
Jan 28 #Javascript
javascript获取wx.config内部字段解决微信分享
Mar 09 #Javascript
You might like
php-accelerator网站加速PHP缓冲的方法
2008/07/30 PHP
php 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
2013/06/18 PHP
zf框架的db类select查询器join链表使用示例(zend框架)
2014/03/14 PHP
php遍历解析xml字符串的方法
2016/05/05 PHP
JQuery datepicker 使用方法
2011/05/20 Javascript
js open() 与showModalDialog()方法使用介绍
2013/09/10 Javascript
javascript对象的使用和属性操作示例详解
2014/03/02 Javascript
两种不同的方法实现js对checkbox进行全选和反选
2014/05/13 Javascript
js实现仿Windows风格选项卡和按钮效果实例
2015/05/13 Javascript
javascript实现在指定元素中垂直水平居中
2015/09/13 Javascript
jQuery设置Cookie及删除Cookie实例分析
2016/04/15 Javascript
js通过keyCode值判断单击键盘上某个键,然后触发指定的事件方法
2017/02/19 Javascript
socket.io实现在线群聊功能
2017/04/07 Javascript
JS基于封装函数实现的表格分页完整示例
2018/06/26 Javascript
vue中的mescroll搜索运用及各种填坑处理
2019/10/30 Javascript
使用 Angular RouteReuseStrategy 缓存(路由)组件的实例代码
2019/11/01 Javascript
Element Input输入框的使用方法
2020/07/26 Javascript
基于javascript实现移动端轮播图效果
2020/12/21 Javascript
[00:33]2016完美“圣”典风云人物:BurNIng宣传片
2016/12/10 DOTA
[47:36]Optic vs Newbee 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
[01:08:29]DOTA2-DPC中国联赛定级赛 RNG vs Aster BO3第一场 1月9日
2021/03/11 DOTA
Python 由字符串函数名得到对应的函数(实例讲解)
2017/08/10 Python
简单了解python元组tuple相关原理
2019/12/02 Python
Python中logging日志库实例详解
2020/02/19 Python
简单了解Python变量作用域正确使用方法
2020/06/12 Python
Oroton中国官网:澳洲知名奢侈配饰品牌
2017/03/26 全球购物
橄榄树药房:OLIVEDA
2019/09/01 全球购物
Java面试题:请问一下代码输出是什么
2015/05/27 面试题
如何判断计算机可能已经中马
2013/03/22 面试题
自考自我鉴定范文
2013/10/30 职场文书
十佳大学生事迹材料
2014/01/29 职场文书
文体活动实施方案
2014/03/27 职场文书
2014年发展党员工作总结
2014/11/12 职场文书
公司考勤管理制度
2015/08/04 职场文书
2016教师六五普法学习心得体会
2016/01/21 职场文书
导游词之泰山玉皇顶
2019/12/23 职场文书