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的更多相关文章

  1. JavaScript字符串api简单说明

    1.可返回指定位置的字符 stringObject.charAt(index); 2.返回的是位于指定位置的字符的编码 stringObject.charCodeAt(index); 3.用于连接两个 ...

  2. javascript的api设计原则

    前言 本篇博文来自一次公司内部的前端分享,从多个方面讨论了在设计接口时遵循的原则,总共包含了七个大块.系卤煮自己总结的一些经验和教训.本篇博文同时也参考了其他一些文章,相关地址会在后面贴出来.很难做到 ...

  3. JavaScript 字符串实用常操纪要

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  4. JavaScript 字符串操作

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  5. 深入理解javascript选择器API系列第三篇——h5新增的3种selector方法

    × 目录 [1]方法 [2]非实时 [3]缺陷 前面的话 尽管DOM作为API已经非常完善了,但是为了实现更多的功能,DOM仍然进行了扩展,其中一个重要的扩展就是对选择器API的扩展.人们对jQuer ...

  6. JavaScript 字符串常用操作

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  7. JavaScript 字符串常用操作纪要

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  8. 深入理解javascript选择器API系列第三篇——HTML5新增的3种selector方法

    前面的话 尽管DOM作为API已经非常完善了,但是为了实现更多的功能,DOM仍然进行了扩展,其中一个重要的扩展就是对选择器API的扩展.人们对jQuery的称赞,很多是由于jQuery方便的元素选择器 ...

  9. JavaScript 的 API设计原则

    一.接口的流畅性 好的接口是流畅易懂的,他主要体现如下几个方面: 1.简单 操作某个元素的css属性,下面是原生的方法: document.querySelectorAll('#id').style. ...

随机推荐

  1. 使用docker部署.net core应用

    CentOS 使用VS2017新建一个asp.net core项目 发布web应用程序 使用FTP工具,将程序文件copy到linux上 XShell连上linux并登陆 cd /CoreWebDem ...

  2. Web前端开发:Sublime Text 常用插件

    在安装这些插件之前,确保你已经安装了Package Control.   安装Package Control方法:   通过菜单栏View->Show Console 或者快捷键Ctrl+` 打 ...

  3. Centos创建定时任务和开机启动运行脚本

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAArYAAADlCAIAAAAp5CPLAAAgAElEQVR4nNS8d3cj15nuW/wq91vc8d ...

  4. 在github上创建新的分支(包括管理分支)

    考虑到前面的项目在master分支上,这个不是太友好,下面在只有master分支的基础上,新建一个dev分支 一:查看 1.查看本地分支 git branch 2.查看远程分支 git branch ...

  5. mybatis sql注入

    这是${}与#{}的区别,#{}采用了预编译,在SQL执行前,会先将上面的SQL发送给数据库进行编译:执行时,直接使用编译好的SQL,替换占位符“?”就可以了.因为SQL注入只能对编译过程起作用,所以 ...

  6. 安卓编程资源文件string中对占位符的使用详解

    这里将为你详细介绍占位符的使用,将其学以致用,可以达到简化布局文件,减少字符串资源量. 1.在资源文件中的使用. 打开资源文件中的strings.xml文件,进行编辑.如下图所示: 图  1.0 2. ...

  7. 多个SDK控制管理

    需求:制作一个公共组件,可以实现多个SDK想用哪个用哪个,集中管理 组织方式: 架构形式 注意点: 1.sdk必须通过maven库来compile,因为jar会打到aar中:所以library和主mo ...

  8. 利用shell脚本实现nginx 的logs日志分割

    Nginx 是一个非常轻量的 Web 服务器,体积小.性能高.速度快等诸多优点.但不足的是也存在缺点,比如其产生的访问日志文件一直就是一个,不会自动地进行切割,如果访问量很大的话,将 导致日志文件容量 ...

  9. Windows 账户名及机器名相关问题记录

    问题 1 背景:因为部门调动,需要接手同事的 PC.相关工具配置好之后,通过"控制面板->用户帐户和家庭安全->用户帐户->管理帐户->更改帐户->重命名帐户& ...

  10. 谷歌浏览器把网页打印成pdf

    一.认识markdown mweb for mac2.2.7 激活版 二.pdf和word pdf的可移植性比较好,在不同的操作系统中都能打开,而且安全,但是可编辑性不好,所以通常用markdown编 ...