js技术之获取字符串中某个字符的位置(lastIndexOf()方法 和 indexOf() 方法)
一.lastIndexOf()方法
1.作用:
方法可返回 一个指定的字符串值 在字符串中最后出现的位置。从左往右查。
2.返回:
一个正整数。或者 -1。
3.语法:
stringObject.lastIndexOf(searchvalue,fromindex)
二.indexOf() 方法
1.作用:
方法可返回 一个指定的字符串值 在字符串中首次出现的位置。从左往右查。
2.返回:
一个正整数。或者 -1。
3.语法:
stringObject.indexOf(searchvalue,fromindex)
三.参数说明
1.参数searchvalue
必需参数值,规定需要检索(查找)的字符串值。
2.参数fromindex
可选的整数参数(可以不选)。
规定在字符串中开始检索的位置。
它的合法取值是 0 到 stringObject.length - 1。
如省略该参数,则将从字符串的最后一个字符处开始检索( lastIndexOf() )或 开始( indexOf() )一个字符处开始检索。
四.案例
1.页面代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<input type="button" value="测试lastIndexOf方法" onclick="lastIndexOfTest()">
<input type="button" value="测试indexOf方法" onclick="indexOfTest()">
</body>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script type="text/javascript">
// 1.获取最后一位字符位置==》lastIndexOf()
function lastIndexOfTest() {
// 定义初始参数
var text = "12345678978";
// 获取最后78字符串的位置
var number = text.lastIndexOf("78");
// 打印位置数字
alert(number); //显示
}
// 2.获取首次一位字符位置==》lastIndexOf()
function indexOfTest() {
// 定义初始参数
var text = "12345678978";
// 获取首次78字符串的位置
var number = text.indexOf("78");
// 打印位置数字
alert(number); //显示
}
</script>
</html>
2.lastIndexOf()结果图
测试lastIndexOf方法的结果,获取最后的一个78位置,结果自然是9
注意这里不是直接截取9,而是长度是9

3.IndexOf()结果图
测试IndexOf方法的结果,获取最后的一个78位置,结果自然是6
注意这里不是直接截取6,而是长度是6

五.总结
1.相同:根据一段字符,查找在其它字符串中的位置。找到返回正整数,找不到返回 -1。
2.返回:一个正整数。或者 -1。
3.lastIndexOf() 方法对大小写敏感!如果要检索的字符串值没有出现,则该方法返回 -1。
4.返回的这个位置范围是 0 ~ str.length-1 或者 -1,类型是 Number。
5.通常是查看 字符串中是否含有对应的字符,没有就返回-1。
js技术之获取字符串中某个字符的位置(lastIndexOf()方法 和 indexOf() 方法)的更多相关文章
- JS正则表达式获取字符串中特定字符
JS正则表达式获取字符串中得特定字符,通过replace的回调函数获取. 实现的效果:在字符串中abcdefgname='test'sddfhskshjsfsjdfps中获取name的值test 实 ...
- 获取字符串中每个字符出现的次数(利用TreeMap)
案例:"aababcabcdabcde",获取字符串中每一个字母出现的次数要求结果:a(5)b(4)c(3)d(2)e(1)分析1:定义一个字符串(可以改进为键盘录入)2:定义一个 ...
- js 获取字符串中某字符第二次出现的下标
var res = "a-b-c-d";var index = find(res,'-',1); //字符串res中第二个‘-’的下标 var ress = res.substri ...
- 使用Map,统计字符串中每个字符出现的次数
package seday13; import java.util.HashMap; import java.util.Map; /** * @author xingsir * 统计字符串中每个字符出 ...
- JS对象 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
返回指定的字符串首次出现的位置 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. 语法 stringObject.indexOf(substring, startpos) 参 ...
- js如何处理字符串中带有↵字符
js或vue中如何处理字符串中带有↵字符 split('\n') 使用split('\n')将字符串分割成数组就行 如果我们在vue中,只需要在页面中绑定变量时操作split('\n')就可以了: & ...
- JS 获取字符串中的url并返回其下标索引
//获取字符串中的url极其下标索引 function getHttpUrlArray(s) { var s1 = s.match(/http.*/); if(s1 == null) { return ...
- JS对象 提取指定数目的字符substr() substr() 方法从字符串中提取从 startPos位置开始的指定数目的字符串。
提取指定数目的字符substr() substr() 方法从字符串中提取从 startPos位置开始的指定数目的字符串. 语法: stringObject.substr(startPos,length ...
- java11-4 字符串的遍历以及字符串中各类字符的统计
1.需求:获取字符串中的每一个字符 分析: A:如何能够拿到每一个字符呢? char charAt(int index) B:我怎么知道字符到底有多少个呢? int length() publi ...
随机推荐
- 【基础知识】CPU上下文切换(进程上下文切换 - 线程上下文切换 - 中断上下文切换)
CPU 上下文切换是什么 CPU 上下文切换,就是先把前一个任务的 CPU 上下文(也就是 CPU 寄存器和程序计数器)保存起来,然后加载新任务的上下文到这些寄存器和程序计数器,最后再跳转到程序计数器 ...
- 5、CPU 的线程与操作系统的线程有何关系?操作系统中的进程和线程是什么关系?
CPU中的线程和操作系统(OS)中的线程即不同,在调度的时候又有些关联.CPU中的线程,我们叫它们Thread,和OS中的线程的名字一样.它来自同步多线程(SMT,Simultaneous Multi ...
- 【C#基础概念】元数据 metadate
元数据是指"描述资料的资料".它被用来概述资料的基础信息,以简化查找过程与方便使用[6]. 创建资料的方法 资料的用途 创建的时间与日期 资料的创建者或作者 资料被创建在电脑网络的 ...
- selenium+python自动化101-使用execute_script() 方法获取 JavaScript 返回值
前言 之前经常使用 execute_script() 方法执行 JavaScript 的来解决页面上一些 selenium 无法操作的元素,但是一直无法获取执行的返回值. 最近翻文档,发现 execu ...
- mysql-8.0.12 安装使用教程
Microsoft Windows [版本 10.0.15063] (c) 2017 Microsoft Corporation.保留所有权利. C:\WINDOWS\system32>D: D ...
- C# Md5Hash
/// <summary> /// MD5 32位加密(大写) /// </summary> /// <param name="str">< ...
- linux添加串口权限
通过添加到用户组的方式实现1.由于tty属于"dialout"组别,比如你的用户名是blue, 先命令查看下用户隶属的组别 groups blue 2.如果没有隶属"di ...
- Redis环境搭建-Linux单机
一.准备Linux 可以买云服务器,也可以用虚拟机,我用的是虚拟机Oracle VM VirtualBox 二.编译环境 1.检查linux下是否安装环境 yum list installed | g ...
- 亿图图示v9.2.0.0 官方中文版及破解激活补丁
介绍 亿图图示是一款由深圳市亿图软件有限公司开发的全类型,综合图形图表设计软件,解决跨平台,多领域,全终端的图形设计,图文混排和工程制图等需求.亿图图示是一款简单易用的快速制图软件,适合任何人绘制任何 ...
- 如何创建一个 Cocoapods 插件
原文链接 前言 我们在使用 Cocoapods 过程中,如果发现它未能满足我们的要求该怎么办呢? 最简单的粗暴的办法就是 fork 一份 Cocoapods 源码,然后自己公司内部或者个人直接针对源码 ...