js基础总结02--字符串操作
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、字符串的一些遍历的方法
- for循环
- for of方法
- 可以将字串转为数组 ,调用forEach,map,for in等常规方法
- 也可以将字符串转为数组后,调用find,reduce,every等另外的方法
js基础总结02--字符串操作的更多相关文章
- Js基础知识1-数组操作全解
数组操作全解 js变量类型 var string; var name = "student",age=12; //underfined.null.boolean.string.nu ...
- Oracle数据库基础知识_字符串操作相关2
6.LPAD,RPAD 作用:左/右边的字符串填充一些特定的字符语法: LPAD(string , n, [pad_String]) string:可是字符或者参数 ...
- 3-15 JS基础知识02
一.For循环: For (var i = 0; i <= 10; i++){ 循环体: } 注意:For循环中的表达式是可以省略的,省略以后是个死循环. odd:奇数 even : 偶 ...
- python基础数据类型之字符串操作
1.字符串切片ps:字符串是不可变的对象, 所以任何操作对原字符 是不会有任何影响的 s1 = "python最简洁" print(s1[0]) print(s1[1]) prin ...
- python基础一 day2 字符串操作
s.capitalize() s.upper() s.lower() s.swapcase() s.title() s.center(20,"#") s.expand ...
- JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象
前 言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...
- 前端面试题目汇总摘录(JS 基础篇 —— 2018.11.02更新)
温故而知新,保持空杯心态 JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string type ...
- js 字符串操作函数有哪些
js 字符串操作函数有哪些 一.总结 一句话总结:js字符串函数都是字符串对象的方法,是通过调用字符串方法的方式调用,和java,php里面不一样. 1.字符串替换函数怎么用? 这里的正则表示是加双引 ...
- vue.js初级入门之最基础的双向绑定操作
首先在页面引入vue.js以及其他需要用到的或者可能要用到的插件(这里我多引用了bootstrap和jquery) 引用的时候需要注意文件的路径,准备工作这样基本就完成了,下面正式开始入门. vue. ...
- node.js整理 02文件操作-常用API
NodeJS不仅能做网络编程,而且能够操作文件. 拷贝 小文件拷贝 var fs = require('fs'); function copy(src, dst) { fs.writeFileSync ...
随机推荐
- angular之路由
一.核心问题 路由要解决的核心问题是通过建立url和页面之间的对应的关系,使不同的页面可以通过不用的url来展示. 首先,当用户在浏览器上输入URL后,Angular将获取该URL并将其解析生成一个U ...
- Mysql高手系列 - 第24篇:如何正确的使用索引?【高手进阶】
Mysql系列的目标是:通过这个系列从入门到全面掌握一个高级开发所需要的全部技能. 欢迎大家加我微信itsoku一起交流java.算法.数据库相关技术. 这是Mysql系列第24篇. 学习索引,主要是 ...
- Java中冒泡排序法的代码实现方法之一
主要运用双层for循环嵌套,进行冒泡排序 public class BubbleSortTest { public static void main(String[] args) { int[] ar ...
- Faker——生成测试数据的PHP类库
工作上用的是TP框架,每次测试功能的时候都要手动添加测试数据,词穷起名总是起一些test1.test2这种low到爆炸的用户名,这让我很难受.稍微翻阅了一些资料,发现laravel有一个生成测试数据的 ...
- Python_散点图绘制
为了可视化一些数据分布,需要以散点图的形式呈现 引入绘图工具 import matplotlib.pyplot as plt from matplotlib.font_manager import F ...
- 动态分配内存-realloc
动态分配内存---relloc 关于 malloc 就不多说了,现在看看 realloc: 函数声明: void *realloc(void *ptr, size_t size); 功能:动态改变指针 ...
- [POJ3523]The Morning after Halloween
Description You are working for an amusement park as an operator of an obakeyashiki, or a haunted ho ...
- python类方法@classmethod与@staticmethod
目录 python类方法@classmethod与@staticmethod 一.@classmethod 介绍 语法 举例 二.@staticmethod 介绍 语法 举例 python类方法@cl ...
- 关于M23内核简介 - 待续
1.定位 M23是基于最新的ARMv8-M构架的主要关注低功耗应用的微控制器,未来会是M0.M0+的替代品. M33是基于最新的ARMv8-M构架的主要关注高能效应用的微控制器,未来会替换M3.M4. ...
- 使用 Hexo,Material Theme 以及 Github Pages 搭建个人博客
准备条件 Node.js npm Git GitHub账号 开始搭建 hexo init Blog cd Blog npm install hexo-deployer-git --save npm i ...