JavaScript字符串API
String.prototype.anchor()
anchor()方法用于创建一个<a>html描元素
const str = '我是html内容'.anchor('我是name属性值')
console.log(str) // "<a name="我是name属性值">我是html内容</a>"
String.prototype.bold()
bold()方法用于创建<b>html元素
const str = 'aaa'.bold()
console.log(str) // "<b>aaa</b>"
String.prototype.charAt()
charAt()方法用于返回字符串指定位置的字符
'amz'.charAt() // 'a' 不传索引则默认为0
'amz'.charAt(1) // 'm'
String.prototype.concat()
concat()将多个字符串拼接在一起
const a = 'aaa'
const b = 'bbb'
const c = 'ccc'.concat(a, b, 'ddd')
console.log(c) // 'cccaaabbbddd'
String.prototype.endsWith()
endsWith()方法用于判断当前字符串是否以另一个给定字符串结尾
const name = 'my name is amz'
name.endsWith('z') // true
name.endsWith('mz') // true
name.endsWith('amz') // true
name.endsWith('is') // false
String.prototype.startsWith()
startsWith()判断当前字符串是否是以另外一个给定的子字符串开头
const amz = 'my name is amz'
amz.startsWith('my n') //true
amz.startsWith('amz', 11) // true 第二个参数是从哪里开始
String.prototype.includes()
includes()判断一个字符串是否包含在另一个字符串中
const name = 'my name is amz'
name.includes('amz') //true
name.includes('s amz') //true
name.includes('you') // false
String.prototype.indexOf()
indexOf()方法返回给定字符串在原字符串中首次出现的索引
const name = 'my name is amz'
name.indexOf('my n') //0 字符串可以给字符串
name.indexOf('y') //
name.indexOf('m', 6) //12 //第二个参数是从第几位开始找
name.indexOf('l') // -1 没找到返回-1
String.prototype.lastIndexOf()
lastIndexOf()方法返回给定字符串在原字符串中最后一次出现的索引
const name = 'my name is amz'
name.lastIndexOf('m') //
name.lastIndexOf('m',7) //5 第二个参数是从第几位开始找,说白了 可以理解把name那个字符串从第七位截取,后面的不要了,
//然后在应用一下name.lastIndexOf('m') ,
//在理解一下,就是从第七位开始向前面找首次出现m的位置
String.prototype.link()
link()方法用于创建一个<a>html标签
‘my name is amz’.link('www.p8p7.com') // <a href="www.p8p7.com">my name is amz</a>
String.prototype.padEnd()
padEnd()方法接受两个两个参数,第一个参数是目标字符串期望的长度,第二个参数是如果字符串长度没达到期望的长度就用第二个参数添加到目前字符串的尾部,使它达到期望的长度
‘abc’.padEnd(5) // 'abc ' 如果第二个参数没有传,就会用空格代替
‘abc’.padEnd(2, 'amz') // 'abc' 如果期望长度小于目标字符串长度 那么就对目标字符串什么也不做,按照原来的返回
'abc'.padEnd(6, '123456') // 'abc123'
String.prototype.padStart()
padStart()方法接受两个两个参数,第一个参数是目标字符串期望的长度,第二个参数是如果字符串长度没达到期望的长度就用第二个参数添加到目前字符串的前面,使它达到期望的长度
'abc'.padStart(6, '123456') // '123abc'
String.prototype.repeat()
repeat()方法用于吧字符串重复n次 n就是传递进去的参数
'amz'.repeat(3.5) //'amzamzamz' 小说会转化成整数 向下取整
'amz'.repeat(0) // ‘’ 重复0次就成了空字符串了
'amz'.repeat(1) // 'amz' 重复1次
'amz'.repeat(2) // 'amzamz' 重复2次
String.prototype.search()
search()返回字符串在指定字符串首次出现的位置,如果没找到就返回-1
'my name is amz'.search('amz') //
'my name is amz'.search('my') //
'my name is amz'.search(/amz/) // 11 也可以传正则表达式
String.prototype.slice()
slice()截取字符串的一部分,并返回这个新字符串
'my name is amz'.slice(11) // "amz" 传递2个参数,第一个参数是从什么位置开始裁剪,第二个参数是 截取到什么地方,如果没传递第二个参数,就默认裁剪到最后一位
'my name is amz'.slice(0,2) // 'my' 从第1位裁剪到第三位
'my name is amz'.slice(0,-1) // "my name is am" 两个参数都可以是负数, 负数参数相加原字符串的长度 也就是上面的意思是说 从第1位裁剪到'my name is amz'.length + -1的位置
String.prototype.split()
split()方法把字符串分割成数组
const amz = 'my name is amz'
amz.split() // ['my name is amz']
amz.split(' ', 2) // ['m', ''y'] 第二个参数是获取字符串的几位,分割成数组
amz.split('name') // ["my ", " is amz"] 第一个参数是 拿掉字符串匹配的字符段 然后分割数组
amz.split('m') // ["", "y na", "e is a", "z"] 第一个参数可以是正则表达式
String.prototype.substr()
substr()方法返回从指定位置开始 到指定数量的字符串
const amz = 'my name is amz'
amz.substr(3) // 'name is amz'
amz.substr(-3) // 字符串长度+ -3 ‘amz’
amz.substr(1, 2) // 'am' 第二个参数是几位
如果开始位置也就是第一个字符串大于字符串长度,则返回一个空字符串 第二个位置超出了字符串剩余长度,则默认为字符串剩余长度。为负数则是字符串长度加负数,也就是说比如我第一个参数为-1 那么我剩余字符串长度是1了,最多只能复制一个长度为1的字符串,第二个值大于1都默认转化为1
String.prototype.substring()
substring()返回字符串从开始索引到结束索引之间的一个子集
也就是提取从substring()第一个参数到第二个参数的 子字符串,参数均为整数,小于0都会被转化为0 ,如果大于字符串长度都会被转化为字符串长度 如果第二个参数大于第一个参数,则会默认吧两个参数位置调换
const amz = 'my name is amz'
amz.substring(1,4) // 'y n' 从第一位截取第四位
amz.substring(4,1) // 'y n' 因为第二个参数大于第一个参数,则默认调换她们的位置 所以还是从第一位截取第四位
String.prototype.toLocaleLowerCase()
toLocaleLowerCase()转化字符串为小写
const amz = 'my NAME is amz'
amz.toLocaleLowerCase() //'my name is amz'
const amz1 = 'MY NAME IS AMZ'
amz1.toLocaleLowerCase() //my name is amz'
String.prototype.toLocaleUpperCase()
toLocaleUpperCase()将字符串转化为大写
const amz = 'my name IS amz'
amz.toLocaleUpperCase() // ''MY NAME IS AMZ
String.prototype.toUpperCase()
toUpperCase()和oLocaleUpperCase()方法一样
const amz = 'my name IS amz’
amz.toUpperCase() // ''MY NAME IS AMZ
String.prototype.toString()
toString()反回指定对象的字符串形式
const amz = 'my name is amz‘
amz.toString() // 'my name is amz'
String.prototype.trim()
trim()清除字符串两端的空格
const amz = ' my name is amz ‘
amz.trim() // 'my name is amz'
String.prototype.trimLeft()
trimLeft()方法清除字符串左边的空格
String.prototype.trimRight()
trimRight()方法清除字符串右边的空格
String.prototype.replace()
replace()方法返回一个由替换值 替换一些匹配到的新字符串,
const amz = 'my name is amz‘
amz.replace(/amz/, '123') // 'my name is 123'
amz.replace('m', '123') // '123y name is amz'
可以是正则表达式匹配 也可以是字符串匹配
JavaScript字符串API的更多相关文章
- JavaScript字符串api简单说明
1.可返回指定位置的字符 stringObject.charAt(index); 2.返回的是位于指定位置的字符的编码 stringObject.charCodeAt(index); 3.用于连接两个 ...
- javascript的api设计原则
前言 本篇博文来自一次公司内部的前端分享,从多个方面讨论了在设计接口时遵循的原则,总共包含了七个大块.系卤煮自己总结的一些经验和教训.本篇博文同时也参考了其他一些文章,相关地址会在后面贴出来.很难做到 ...
- JavaScript 字符串实用常操纪要
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- JavaScript 字符串操作
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- 深入理解javascript选择器API系列第三篇——h5新增的3种selector方法
× 目录 [1]方法 [2]非实时 [3]缺陷 前面的话 尽管DOM作为API已经非常完善了,但是为了实现更多的功能,DOM仍然进行了扩展,其中一个重要的扩展就是对选择器API的扩展.人们对jQuer ...
- JavaScript 字符串常用操作
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- JavaScript 字符串常用操作纪要
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- 深入理解javascript选择器API系列第三篇——HTML5新增的3种selector方法
前面的话 尽管DOM作为API已经非常完善了,但是为了实现更多的功能,DOM仍然进行了扩展,其中一个重要的扩展就是对选择器API的扩展.人们对jQuery的称赞,很多是由于jQuery方便的元素选择器 ...
- JavaScript 的 API设计原则
一.接口的流畅性 好的接口是流畅易懂的,他主要体现如下几个方面: 1.简单 操作某个元素的css属性,下面是原生的方法: document.querySelectorAll('#id').style. ...
随机推荐
- dedecms首页入口的详细注释
今天闲来无事,就拿来dede首页的文件给大家详细解释一遍,以便于新手学习,注释过程非常非常非常的详细,里面解释到dede表前缀#@__代替的原理.解释到dede很多自定义函数的具体位置和具体作用等等疑 ...
- vsftp虚拟主机实战
文件传输协议,基于该协议FTP客户端与服务端可以实现共享文件,上传文件,下载文件.FTP基于TVP协议生成一个虚拟的连接,主要用于控制FTP连接信息,同时再生成一个单独的TCP连接用于FTP数据传输, ...
- net core体系-web应用程序-4asp.net core2.0 项目实战(1)-8项目加密解密方案
本文目录1. 摘要2. MD5加密封装3. AES的加密.解密4. DES加密/解密5. 总结 1. 摘要 C#中常用的一些加密和解密方案,如:md5加密.RSA加密与解密和DES加密等,Asp.N ...
- Linux LVM动态扩容
引用自: https://blog.csdn.net/u012439646/article/details/73380197 xfs_growfs /dev/centos/root 一.首先安 ...
- log4j快速入门
转自:http://blog.csdn.net/yanwushu/article/details/7581255 1.引言 在应用程序中添加日志记录总的来说基于三个目的: .监视代码中变量的变化情况, ...
- 034 Maven中的dependencyManagement和dependencies区别
这个标签使用过,但是具体的描述还是没有说明过.在这里,专门查了一下,写了这篇文章. 1.定义 在Maven中dependencyManagement的作用其实相当于一个对所依赖jar包进行版本管理的管 ...
- SSL/TLS
為 授权计算机为 SSL/TLS 安全通道建立信任关系. ServicePointManager.ServerCertificateValidationCallback += (o, c, ch, e ...
- HDFS格式化namenode后启动集群datanode不启动
这是因为格式化namenode之后,namenode节点中VERSION的ClusterID会改变!!! 解决办法: 1.打开namenode节点的hdfs-site.xml文件,查看你的nameno ...
- HDU 1540 Tunnel Warfare(经典)(区间合并)【线段树】
<题目链接> 题目大意: 一个长度为n的线段,下面m个操作 D x 表示将单元x毁掉 R 表示修复最后毁坏的那个单元 Q x 询问这个单元以及它周围有多少个连续的单元,如果它本身已经被 ...
- ES2018正则表达式更新
如果你是一个初学者,这篇文章可以拓展你对正则表达式用法的理解,不过建议你先阅读一些正则表达式入门文章,比如经典的<正则表达式30分钟入门教程>.如果你对正则表达式有一定的认识,那么这篇文章 ...