Js 字符串的三大操作
回顾:
var num = str.length:字符个数
str = str.toLowerCase()/toUpperCase()
var char = str.charAt(index) :指定位置的字符
var code = str.charCodeAt(index):指定位置的字符的unicode编码
字符串三大操作:
1.查找关键字
2.替换关机子
3.获取子字符串
查找关键字:var index = str.indexOf("关键字");
返回关键字所在位置!****如果没找到 返回-1**
indexOf:懒:只找第一个关键字位置!
蠢:默认只能从位置0开始~
var index = str.indexOf("关键字",from);
from:开始查找的位置 从from开始向后查找,
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var str="女神说要来,我草草的收拾了房间。他又说不来了。我说:我草";
var index=-1; //从上次找到的位置开始
while((index=str.indexOf("我草",index+1))!=-1){
console.log("位置"+index+"发现关键字"); // 位置6发现关键字 位置26发现关键字
}
</script>
</body>
</html>
从最后一个字符,向前找:只要关键字离结尾近 ,就用last
var index = str.lastIndexOf("关键字",from);
from:开始查找的位置 从from开始 向前查找
返回的Index完全相同~ 字符在数组中的下标是固定的!
2处修改:index从str.length开始;每次index要-1;
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var str="女神说要来,我草草的收拾了房间。他又说不来了。我说:我草";
var index=str.length; //从上次找到的位置开始
while((index=str.lastIndexOf("我草",index-1))!=-1){
console.log("位置"+index+"发现关键字") // 位置26发现关键字 位置6发现关键字
}
</script>
</body>
</html>
2、获取子字符串:var subStr = str.slice(start,end); //含头不含尾 要在获取的最后一位再加1
str.substring(start,end+1) 用法同slice~
唯一差别:不支持负值作为参数!
str.substr(start,count)
以上三种方法省略第二个参数,默认都是取到结尾。
按规律分割字符串:var subs = str.split(“分割符”[,count]); //返回切割后的数组
实例:
把字符串中的首字母变大写:
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var str="no zuo no die";
var words=str.split(" ");
console.log(words); //["no", "zuo", "no", "die"]
for(var i=0; i<words.length; i++){
//取每个单词元素的首字母大写
//拼第二个字母之后的所有字符
words[i]=words[i][0].toUpperCase()+words[i].substring(1);
}
console.log(words); //["No", "Zuo", "No", "Die"]
var newwords=words.join(" ");
console.log(newwords); //No Zuo No Die
</script>
</body>
</html>
Js 字符串的三大操作的更多相关文章
- js字符串和数组操作,容易混淆的方法总结(slice、substring、substr、splice)
平时工作中,很少静下心来总结基础知识,总觉得自己会用了,有点飘了,直到碰壁之后才懂得基础知识的重要性.大牛告诉我,一次写对,是不是可以不用F12去调试了?是不是省了时间?简直是面红耳赤,无地自容.在这 ...
- js字符串操作
javascript中字符串常用操作总结.JS字符串操作大全 String对象属性 (1) length属性 length算是字符串中非常常用的一个属性了,它的功能是获取字符串的长度.当然需要注意的是 ...
- 页面循环绑定(变量污染问题),js面向对象编程(对象属性增删改查),js字符串操作,js数组操作
页面循环绑定(变量污染问题) var lis = document.querySelectorAll(".ul li") for ( var i = 0 ; i < lis. ...
- js 字符串操作函数有哪些
js 字符串操作函数有哪些 一.总结 一句话总结:js字符串函数都是字符串对象的方法,是通过调用字符串方法的方式调用,和java,php里面不一样. 1.字符串替换函数怎么用? 这里的正则表示是加双引 ...
- js字符串操作函数
js字符串函数 JS自带函数 concat 将两个或多个字符的文本组合起来,返回一个新的字符串. var a = "hello"; var b = ",world&quo ...
- 探讨js字符串数组拼接的性能问题
这篇文章主要介绍了有关js对字符串数组进行拼接的性能问题,字符串连接一直是js中性能最低的操作之一,应该如何解决呢?请参看本文的介绍 我们知道,在js中,字符串连接是性能最低的操作之一. 例如: 复制 ...
- 从js的repeat方法谈js字符串与数组的扩展方法
js将字符串重复N次的repeat方法的8个版本 /* *@desc: 将一个字符串重复自身N次 */ //版本1:利用空数组的join方法 function repeat(target, n) { ...
- js,jQuery数组常用操作小结
一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...
- html 转 js 字符串
看到一个牛人的博客 http://riny.net/lab/#tools_html2js 看了下他的代码 挺棒的 所依赖的两个库在这里 https://github.com/Bubblings/l ...
随机推荐
- git-github-TortoiseGit综合使用教程(二)快速入门
:建立版本库 在github网站上创建一个版本库,并复制clone地址. git@github.com:jackadam1981/Flask_Base.git https://github.com/j ...
- RabbitMQ 设置队列的过期时间
设置队列的过期时间非常简单,在声明队列时,设置x-expires参数即可.当队列的生存周期超时后,RabbitMQ server会自动将该队列删除. 代码如下: channel.QueueDeclar ...
- Android : 修改内核源码 and 编译、打包成新的boot.img
一.Android内核源码的下载: 1.Google GIT地址: $ git clone https://android.googlesource.com/kernel/common.git $ g ...
- Java 利用poi生成excel表格
所需jar包,如下所示 写一个excel工具类 ExcelUtils .java import java.lang.reflect.Field; import java.util.Iterator; ...
- 玩转X-CTR100 l STM32F4 l DSP指令集性能测试
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 DSP库的 ...
- 写的一个ORACLE存储过程小练习
CREATE OR REPLACE PROCEDURE PRO_1112(O_NOTE OUT NUMBER,O_RESULT OUT VARCHAR2)ASV_NO NUMBER(20);V_NOT ...
- 20165326 java第八周学习笔记
第八周学习笔记 知识点总结 1.进程与线程 进程:程序的一次动态执行过程 区别:进程和线程的区别? 进程是资源的分配和调度的一个独立单元,而线程是CPU调度的基本单元 同一个进程中可以包括多个线程,并 ...
- day73 母版 中间件
关于母版自定义的问题 模板引擎: 基本实用{{k1}} if for 在页面传参数 并判断 通过母版进行交互 一 模板中自定义函数:操作步骤 1在已经注册的App中创建一个名字叫templat ...
- react 学习笔记 npm 命令
第一步: cnpm install --save react react-dom babelify babel-preset-react 第二步: 安装es2015 cnpm install babe ...
- Vuejs 用$emit 与 $on 来进行兄弟组件之间的数据传输
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...