回顾:

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 字符串的三大操作的更多相关文章

  1. js字符串和数组操作,容易混淆的方法总结(slice、substring、substr、splice)

    平时工作中,很少静下心来总结基础知识,总觉得自己会用了,有点飘了,直到碰壁之后才懂得基础知识的重要性.大牛告诉我,一次写对,是不是可以不用F12去调试了?是不是省了时间?简直是面红耳赤,无地自容.在这 ...

  2. js字符串操作

    javascript中字符串常用操作总结.JS字符串操作大全 String对象属性 (1) length属性 length算是字符串中非常常用的一个属性了,它的功能是获取字符串的长度.当然需要注意的是 ...

  3. 页面循环绑定(变量污染问题),js面向对象编程(对象属性增删改查),js字符串操作,js数组操作

    页面循环绑定(变量污染问题) var lis = document.querySelectorAll(".ul li") for ( var i = 0 ; i < lis. ...

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

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

  5. js字符串操作函数

    js字符串函数 JS自带函数 concat 将两个或多个字符的文本组合起来,返回一个新的字符串. var a = "hello"; var b = ",world&quo ...

  6. 探讨js字符串数组拼接的性能问题

    这篇文章主要介绍了有关js对字符串数组进行拼接的性能问题,字符串连接一直是js中性能最低的操作之一,应该如何解决呢?请参看本文的介绍 我们知道,在js中,字符串连接是性能最低的操作之一. 例如: 复制 ...

  7. 从js的repeat方法谈js字符串与数组的扩展方法

    js将字符串重复N次的repeat方法的8个版本 /* *@desc: 将一个字符串重复自身N次 */ //版本1:利用空数组的join方法 function repeat(target, n) { ...

  8. js,jQuery数组常用操作小结

    一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...

  9. html 转 js 字符串

    看到一个牛人的博客  http://riny.net/lab/#tools_html2js 看了下他的代码  挺棒的 所依赖的两个库在这里 https://github.com/Bubblings/l ...

随机推荐

  1. websphere部署war包

    通过websphere部署以及打包成war的web项目. (1)安装配置war包,部署项目 登录websphere,进入websphere主页(依次选中) Applications -->   ...

  2. Docker使用jenkins部署java项目到远程linux(三)

    实现功能:从本地提交代码到gogs上,本地的代码会被检测一遍 如果检测通过才能commit成功 然后可以继续执行push命令 .push后在gogs上使用web钩子自动推送到jenkins触发构建,j ...

  3. 每天CSS学习之white-space

    white-space是CSS的属性,其作用是规定文本不进行换行. white-space有以下几个值: 1.normal:该值为默认值,段落前后的空白会被浏览器忽略.如下所示: <div st ...

  4. 关于iOS构建版本

    1.Build Active Architecture Only 设置 Build Active Architecture Only 设置为NO的时候,会编译支持的所有的版本 设置为YES的时候,是为 ...

  5. java动手动脑3

    2016-10-152016-10-15一.编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数. 生成50个1到10的随机整数. value=a+(int)(Math.Random() ...

  6. Android开发 ---基本UI组件3:单选按钮、多选按钮、下拉列表、提交按钮、重置按钮、取消按钮

    Android开发 ---基本UI组件2 1.activity_main.xml 描述: 定义一个用户注册按钮 <?xml version="1.0" encoding=&q ...

  7. shell怎么判断两个文件内容是否相同

    #cat diff_two_file#/bin/sbinfile1=/mnt/mmc/test/aafile2=/mnt/mmc/test/bbdiff $file1 $file2 > /dev ...

  8. python调用shell脚本

    # coding=utf-8   //设置文本格式import os            //导入os方法print('hello')n=os.system('/home/csliyb/kjqy_x ...

  9. PODOFO编译

    由于LibHaru库只能创建PDF,所以只能换了. PODOFO项目的依赖项目有: FreeType2: https://sourceforge.net/projects/freetype/files ...

  10. ESP8266上报数据到中国移动物联网平台HTTP

    #include <HttpPacket.h> #include <ArduinoJson.h> #include <ESP8266WiFi.h> HttpPack ...