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. 色即是空,空即是色---java有关null的几件小事

    故事背景 ---摩诃般若波罗蜜多心经: 观自在菩萨,行深般若波罗蜜多时,照见五蕴皆空,度一切苦厄.舍利子,色不异空,空不异色:色即是空,空即是色.受想行识,亦复如是.舍利子,是诸法空相,不生不灭,不垢 ...

  2. Vue/React圆环进度条

    数据展示,一直是各行各业乐此不疲的需求,具体到前端开发行业,则是各种各种图表数据展示,各种表格数据展示,烦不胜烦(繁不胜繁)! 前几天刚做了折线图.柱状图.饼状图之类的图表数据展示效果,今天又碰到了类 ...

  3. Android开发——实现子线程更新UI

    Android中线程按功能分的话,可以分为两个,一个是主线程(UI线程),其他的都是子线程 主线程不能执行那些耗时过长的代码或任务(执行耗时过长的代码会出现应用未响应的提示),所以都是使用子线程来执行 ...

  4. Java读源码之Object

    前言 JDK版本: 1.8 最近想看看jdk源码提高下技术深度(比较闲),万物皆对象,虽然Object大多native方法但还是很重要的. 源码 package java.lang; /** * Ja ...

  5. HTML5 video视频字幕的使用和制作

    一.video支持视频格式: 以下是三种最常用的格式 1. ogg格式:带有Theora视频编码(免费)+Vorbis音频编码的Ogg文件(免费) 支持的浏览器:firefox.chrome.oper ...

  6. HTML CSS3中2D转换、3D转换、过渡效果总结

    一.CSS3 2D转换 通过 CSS3 转换,我们可以对元素进行移动.缩放.转动.拉长或拉伸. 特别注意,我们在使用css3动画效果时,必须给他们加相应的浏览器前缀,以便浏览器识别,让我们更好的去应用 ...

  7. JZOJ5771【NOIP2008模拟】遨游

    Description      MWH寒假外出旅游,来到了S国.S国划分为N个省,第i个省有Ti座城市,编号分别为Ci1,Ci2,……CiTi(各省城市编号不会重复).所有城市间有M条双向的道路连接 ...

  8. C++中哪些函数不能声明为virtual?

    首先要明确,virtual是用于支持类多态的关键字,所以出现在类声明之外的地方都是错误的.由此可以断定下文的1. 普通函数(即非类成员函数)不能是virtual的,否则不能通过编译,virtual只能 ...

  9. ESP32 开发之旅② Arduino For ESP32说明

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  10. [NOI2001]食物链(并查集拓展域)&& [HAOI2006]旅行(Kruskal)

    题目描述 动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形.A 吃 B,B 吃 C,C 吃 A. 现有 N 个动物,以 1 - N 编号.每个动物都是 A,B,C 中的一种,但是我 ...