博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript之字符String
阅读量:6497 次
发布时间:2019-06-24

本文共 4913 字,大约阅读时间需要 16 分钟。

hot3.png

    字符串String类型是由引号括起来的一组由16位Unicode字符组成的字符序列。字符串类型常被用于表示文本数据,此时字符串中的每个元素都被视为一个代码点。每个元素都被认为占有此序列中的一个位置,用非负数值索引这些位置。首字符从位置0开始,第二个字符在位置1,依次类推。字符串的长度即其中元素的个数(比如,16 位值)。空字符串长度为零。

    String 对象用于处理文本(字符串)。Java中有字符和字符串来处理文本, javascript没有表示单个字符的字符型,只有字符串String类型,字符型相当于仅包含一个字符的字符串。字符串String是javascript基本数据类型,同时javascript也支持String对象,它是一个原始值的包装对象。在需要时,javascript会自动在原始形式和对象形式之间转换。

    String 对象属性:

    length: length 属性可返回字符串中的字符数目。

var txt="steingstudy!!!";txt.length;//14

    String HTML包装方法:

//anchor() 方法用于创建 HTML 锚。txt.anchor('mytxtanc');//steingstudy!!!//big() 方法用于把字符串显示为大号字体。txt.big();//steingstudy!!!//blink() 方法用于显示闪动的字符串。txt.blink();//
steingstudy!!!
//bold() 方法用于把字符串显示为粗体。txt.bold();//'steingstudy!!!'//fixed() 方法用于把字符串显示为打字机字体。txt.fixed();//'steingstudy!!!'//fontcolor() 方法用于按照指定的颜色来显示字符串。txt.fontcolor('red');//'steingstudy!!!'txt.fontcolor('#f00');//'steingstudy!!!'txt.fontcolor('rgb(255,0,0)');//'steingstudy!!!'//fontsize() 方法用于按照指定的尺寸来显示字符串。txt.fontsize('14px');//'steingstudy!!!'txt.fontsize(4);//'steingstudy!!!'//italics() 方法用于把字符串显示为斜体。该方法返回加了 标签的字符串txt.italics();//'steingstudy!!!'//link() 方法用于把字符串显示为超链接。该方法返回加了 标签的字符串txt.link('https://www.baidu.com');//"steingstudy!!!"//small() 方法用于把字符串显示为小号字。该方法返回加了 标签的字符串txt.small();//"steingstudy!!!"//strike() 方法用于显示加删除线的字符串。该方法返回加了
标签的字符串txt.strike();//"
steingstudy!!!
"//sub() 方法用于把字符串显示为下标。该方法返回加入
标签的字符串txt.sub();//"steingstudy!!!"//sup() 方法用于把字符串显示为上标。该方法返回加入 the 标签的字符串txt.sup();//"steingstudy!!!"

    String 对象方法:

//charAt() 方法可返回指定位置的字符。第一个字符位置为 0, 第二个字符位置为 1,以此类推.txt.charAt(0);//"s"txt.charAt(10);//"y"txt.charAt(15);//""txt.charAt(txt.length-1);//"!"//charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。字符串中第一个字符的位置为 0, //第二个字符位置为 1,以此类推。txt.charCodeAt(0);//115//fromCharCode() 可接受一个指定的 Unicode 值,然后返回一个字符串。//该方法是 String 的静态方法,字符串中的每个字符都由单独的 Unicode 数字编码指定。String.fromCharCode(115);//"s"String.fromCharCode(115,90);//"sZ"String.fromCharCode(115,90,100);//"sZd"//fromCodePoint()是String的静态方法,该方法使用指定的unicode参数返回一个primitive的字符串。//与fromCharCode功能类似,但是支持的Unicode字符更全,但是浏览器支持情况不是太好,目前ie以及safari还不支持。//另外,性能并没有fromCharCode快。因为是ES6当中的新定义的特性,所以目前还不适合放到正式产品环境中去使用。String.fromCodePoint(115);//"s"String.fromCodePoint(115,90);//"sZ"String.fromCharCode(115,90,100);//"sZd"//concat() 方法用于连接两个或多个字符串。txt.concat('ss',11,'a');//"steingstudy!!!ss11a"//indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果没有找到匹配的字符串则返回 -1。txt.indexOf(0);//-1txt.indexOf('s');//0txt.indexOf('s',1);//6txt.indexOf('!');//11//lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。//如果没有找到匹配字符串则返回 -1 。txt.lastIndexOf(0);//-1txt.lastIndexOf('s');//6txt.lastIndexOf('s',1);//0txt.lastIndexOf('s',10);//6txt.lastIndexOf('!');//13//match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。txt.match(0);//nulltxt.match('s');//Array [ "s" ]txt.match(/s/);//Array [ "s" ]txt.match(/s/g);//Array [ "s", "s" ]//replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。txt.replace('s','S');//"Steingstudy!!!"txt.replace('A','Ss');//"steingstudy!!!"txt.replace(/s/ig,'SSSsss');//"SSSsssteingSSSssstudy!!!"txt.replace(/!+/ig,'!');//"steingstudy!"//search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。//如果没有找到任何匹配的子串,则返回 -1。txt.search('s');//0txt.search(/s/g);//0txt.search();//0txt.search('');//0txt.search(/a/g);//-1txt.search(/!/);//11//slice(start,end) 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。使用 start 和 end 参数来//指定字符串提取的部分。字符串中第一个字符位置为 0, 第二个字符位置为 1, 以此类推。如果是负数,//则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推txt.slice();//"steingstudy!!!"txt.slice(0,1);//"s"txt.slice(1,5);//"tein"txt.slice(4,5);//"n"txt.slice(-1);//"!"txt.slice(2,-5);//"eingstu"txt.slice(0,-9);//"stein"//split() 方法用于把一个字符串分割成字符串数组。如果把空字符串 ("") 用作 separator,//那么 stringObject 中的每个字符之间都会被分割。 split() 方法不改变原始字符串。txt.split('');//Array [ "s", "t", "e", "i", "n", "g", "s", "t", "u", "d", 等 4 项… ]txt.split('',5);//Array [ "s", "t", "e", "i", "n" ]txt.split('s');//Array [ "", "teing", "tudy!!!" ]//substr() 方法可在字符串中抽取从 开始 下标开始的指定数目的字符。 substr() 的参数指定的是子串的开始位置和长度,//因此它可以替代 substring() 和 slice() 来使用。ECMAscript 没有对该方法进行标准化,因此反对使用它。txt.substr(1);//"teingstudy!!!"txt.substr(1,5);//"teing"txt.substr(-1,5);//"!"txt.substr(-5,5);//"dy!!!"//substring() 方法用于提取字符串中介于两个指定下标之间的字符。返回的子串包括 开始 处的字符,//但不包括 结束 处的字符。txt.substring(1);//"teingstudy!!!"txt.substring(1,5);//"tein"txt.substring(-1,5);//"stein"txt.substring(5,-5);//"stein"//toLowerCase() 方法用于把字符串转换为小写。txt.toLowerCase();//"steingstudy!!!"//toUpperCase() 方法用于把字符串转换为大写。txt.toUpperCase();//"STEINGSTUDY!!!"//toLocaleLowerCase() 方法用于把字符串按照本地方式转换为小写。txt.toLocaleLowerCase();//"steingstudy!!!"//toLocaleUpperCase() 方法用于把字符串按照本地方式转换为大写。txt.toLocaleUpperCase();//"STEINGSTUDY!!!"//trim()去掉字符串两边空格txt.trim();//"steingstudy!!!"//trimLeft()去掉字符串左边的空格txt.trimLeft();//"steingstudy!!!"//trimRight()去掉字符串右边的空格txt.trimRight();//"steingstudy!!!"

    需要注意的是,JavaScript 的字符串是不可变的,String 类定义的方法都不能改变字符串的内容。像 String.toUpperCase() 这样的方法,返回的是全新的字符串,而不是修改原始字符串。

转载于:https://my.oschina.net/liuyongfov/blog/777851

你可能感兴趣的文章
可以免费下载视频素材和模板网站汇总
查看>>
Q:图像太大,在opencv上显示不完全
查看>>
我的友情链接
查看>>
5.Struts2-Struts标签
查看>>
各种技术综合总结(一)
查看>>
Filter案例用户自动登录学习笔记
查看>>
阿里云内网和公共NTP服务器
查看>>
c++ 正则表达式邮箱
查看>>
C 提高1 内存四区 变量本质 栈开口方向 指针铁律1
查看>>
QT windows平台安装
查看>>
Outlook 2003 邮件不能显示图片
查看>>
1+1*2+1*2*3+1*2*3*n数列的求和算法
查看>>
异常模拟测试 -- 场景抽象及解决方案
查看>>
Gradle之旅-can not find tools.jar问题解决
查看>>
JavaScript_navigator
查看>>
apache配置文件详解
查看>>
linux下echo的使用总结
查看>>
EDM营销学堂:高效提升营销邮件点击率的技巧
查看>>
ORACLE 11G静默安装配置分解
查看>>
为什么大家不相信国产虚拟化技术?
查看>>