1、字符串中对单个字符位置的操作

  • indexOf(char); 从左往右查找,返回匹配到的第一个字符的位置,没有匹配则返回-1
  • lastiIndexOf(char); 从右往左查找,返回匹配到的第一个字符的位置,没有匹配则返回-1
  • charAt(index); 返回指定位置的字符,index超出字符串长度,则返回''这个空字符串
  • charCodeAt(index); 返回指定位置的unicode编码
  • search(String); 检索字符串,返回匹配子串的位置
<script>
var str = new String('012a210');
console.log(str);
console.log(str.indexOf('2'));//
console.log(str.lastIndexOf('1'));//
console.log(str.charAt(3));//a
var c = str.charAt(10);
console.log(c == '');//true
console.log(str.charCodeAt(3));//
console.log(str.charCodeAt(10));//NaN
console.log(str.search('a'));//3
</script>

2、字符串中片段的分割

  • slice(start,end); 剪切从start起,到end-1位置的子串,不改变原字符串
  • substr(start,[length]); 从start起,剪切长度为length的子串
  • substring(start,[end]); 剪切从start起,到end-1位置的子串,不同之处在于参数不能为负数

注意:位置参数为负数的形式时,从字符串最后一位为-1开始计算

<script>
var str = new String('012a210');
console.log(str.slice(1,3));//
console.log(str);//'012a210'
console.log(str.substr(1,3));//12a
console.log(str);//'012a210'
console.log(str.substring(1,3));
console.log(str);
</script>

3、字符串中字符存在的验证

  • 除了可以用indexOf,charAt等方法对字符串存在进行验证后,还有一些专门的验证函数
  • includes(str,[start]);  返回boolean,从start位置开始寻找
  • startsWith(str,[start]); 是否存在头部   endsWith(str,[start]); 是否存在于尾部

4、字符串中的填充及去空格

  • padStart(n,str); padEnd(n,str);   字符串不够n长度,会在头部和尾部填充str
  • trim() 去除字符串中的空格  //trimEnd(),trimStart(),trimRight(),trimLeft() 去除头部或尾部空格

5、字符串中一些常规方法与属性

  • .length 返回字符串长度
  • concat(str) 在调用方法的字符串尾部连接str
  • toLowerCase(),toUpperCase() 转化大小写 //toLocaleLowerCase(),toLocaleUpperCase() 根据地区规则进行大大小写转化
  • replace('a','b')  将字符串中a替换成b,返回一个新字符创,不会改变原有的字符串,a可改为正则表达式
  • 将字符串转为数组,常规方法为 var array = string.split();  与之对应的是将数组转为字符串的 var string = array.join('');

6、字符串的一些遍历的方法

  1. for循环
  2. for of方法
  3. 可以将字串转为数组 ,调用forEach,map,for in等常规方法
  4. 也可以将字符串转为数组后,调用find,reduce,every等另外的方法

js基础总结02--字符串操作的更多相关文章

  1. Js基础知识1-数组操作全解

    数组操作全解 js变量类型 var string; var name = "student",age=12; //underfined.null.boolean.string.nu ...

  2. Oracle数据库基础知识_字符串操作相关2

    6.LPAD,RPAD 作用:左/右边的字符串填充一些特定的字符语法: LPAD(string , n, [pad_String])          string:可是字符或者参数          ...

  3. 3-15 JS基础知识02

    一.For循环: For (var i = 0;  i <= 10;  i++){ 循环体: } 注意:For循环中的表达式是可以省略的,省略以后是个死循环. odd:奇数   even : 偶 ...

  4. python基础数据类型之字符串操作

    1.字符串切片ps:字符串是不可变的对象, 所以任何操作对原字符 是不会有任何影响的 s1 = "python最简洁" print(s1[0]) print(s1[1]) prin ...

  5. python基础一 day2 字符串操作

    s.capitalize()  s.upper()  s.lower() s.swapcase()   s.title()  s.center(20,"#")   s.expand ...

  6. JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象

       前   言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...

  7. 前端面试题目汇总摘录(JS 基础篇 —— 2018.11.02更新)

    温故而知新,保持空杯心态 JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string type ...

  8. js 字符串操作函数有哪些

    js 字符串操作函数有哪些 一.总结 一句话总结:js字符串函数都是字符串对象的方法,是通过调用字符串方法的方式调用,和java,php里面不一样. 1.字符串替换函数怎么用? 这里的正则表示是加双引 ...

  9. vue.js初级入门之最基础的双向绑定操作

    首先在页面引入vue.js以及其他需要用到的或者可能要用到的插件(这里我多引用了bootstrap和jquery) 引用的时候需要注意文件的路径,准备工作这样基本就完成了,下面正式开始入门. vue. ...

  10. node.js整理 02文件操作-常用API

    NodeJS不仅能做网络编程,而且能够操作文件. 拷贝 小文件拷贝 var fs = require('fs'); function copy(src, dst) { fs.writeFileSync ...

随机推荐

  1. angular之路由

    一.核心问题 路由要解决的核心问题是通过建立url和页面之间的对应的关系,使不同的页面可以通过不用的url来展示. 首先,当用户在浏览器上输入URL后,Angular将获取该URL并将其解析生成一个U ...

  2. Mysql高手系列 - 第24篇:如何正确的使用索引?【高手进阶】

    Mysql系列的目标是:通过这个系列从入门到全面掌握一个高级开发所需要的全部技能. 欢迎大家加我微信itsoku一起交流java.算法.数据库相关技术. 这是Mysql系列第24篇. 学习索引,主要是 ...

  3. Java中冒泡排序法的代码实现方法之一

    主要运用双层for循环嵌套,进行冒泡排序 public class BubbleSortTest { public static void main(String[] args) { int[] ar ...

  4. Faker——生成测试数据的PHP类库

    工作上用的是TP框架,每次测试功能的时候都要手动添加测试数据,词穷起名总是起一些test1.test2这种low到爆炸的用户名,这让我很难受.稍微翻阅了一些资料,发现laravel有一个生成测试数据的 ...

  5. Python_散点图绘制

    为了可视化一些数据分布,需要以散点图的形式呈现 引入绘图工具 import matplotlib.pyplot as plt from matplotlib.font_manager import F ...

  6. 动态分配内存-realloc

    动态分配内存---relloc 关于 malloc 就不多说了,现在看看 realloc: 函数声明: void *realloc(void *ptr, size_t size); 功能:动态改变指针 ...

  7. [POJ3523]The Morning after Halloween

    Description You are working for an amusement park as an operator of an obakeyashiki, or a haunted ho ...

  8. python类方法@classmethod与@staticmethod

    目录 python类方法@classmethod与@staticmethod 一.@classmethod 介绍 语法 举例 二.@staticmethod 介绍 语法 举例 python类方法@cl ...

  9. 关于M23内核简介 - 待续

    1.定位 M23是基于最新的ARMv8-M构架的主要关注低功耗应用的微控制器,未来会是M0.M0+的替代品. M33是基于最新的ARMv8-M构架的主要关注高能效应用的微控制器,未来会替换M3.M4. ...

  10. 使用 Hexo,Material Theme 以及 Github Pages 搭建个人博客

    准备条件 Node.js npm Git GitHub账号 开始搭建 hexo init Blog cd Blog npm install hexo-deployer-git --save npm i ...