在之前的文章《js字符串学习之怎么返回给定下标间的子串》中,我们介绍了截取指定下标位置间字符串,并返回被提取的部分(子串)的方法。这次我们继续JavaScript字符串学习,了解另一种截取字符串方法,感兴趣的朋友可以学习了解一下~
本文的主题是介绍一下按照指定长度截取字符串的方法,然后利用这种方法看看如何获取文件的扩展名。
首先我们来看看要如何截取指定长度的子串并返回呢?下面给大家具体介绍一下。
我们来看看一个例子:
var str="Hello world!"; var n=str.substr(2,3) console.log(n);
输出结果:
可以看出:我们使用str.substr(2,3)
从第三字符开始,截取了3个字符,因此返回的子串为“llo
”。
我们来了解一下substr()方法。
str.substr(start,length)
方法能够根据指定长度来截取子字符串。它包含两个参数,第一个参数start
不可省略,表示准备截取的子字符串起始下标;第二个参数length
可省略,表示截取的长度,即需要截取的字符数。
如果省略第二个参数length
,那么就会从start开始,截取后面全部的字符。
var str="Hello world!"; var n=str.substr(2) console.log(n);
输出结果:
如果如果第一个参数start
为负值,则表示从字符串的尾部开始计算下标位置,即 -1表示最后一个字符,-2 表示倒数第二个字符,以此类推。(这对于左侧字符长度不固定时非常有用。)
var str="Hello world!"; var n1=str.substr(-1,1); var n2=str.substr(-2,1); var n3=str.substr(-3,2); console.log(n1); console.log(n2); console.log(n3);
输出结果:
通过上文,我们知道可以使用substr()方法来截取指定长度子串,并返回该子串。下面我们来看看利用这种方法怎样来获取文件扩展名。
我们可以使用substr()和lastIndexOf()方法获取文件的扩展名,例如有下面一个文件url
../img/1.png
使用下面语句就可获取文件的扩展名:
var str="../img/1.png"; var b = str.substr(str.lastIndexOf(".") ,4); //截取最后一个点号开始4个字符 console.log(b); //返回子字符串“.png”
分析:使用str.lastIndexOf(".")
可以获取字符“.”最后一次的出现位置,然后将其作为substr()方法的第一个参数,指定截取字符串的开始位置。因为扩展名“.png”有四个字符,因此设置substr()方法的第二个参数为4即可。
输出结果:
如果只想获取到“png”,那么可以在 str.lastIndexOf(".")的基础上加1:
var str="../img/1.png"; var b = str.substr(str.lastIndexOf(".")+1 ,3); //截取最后一个点号后3个字符 console.log(b); //返回子字符串“png”
输出结果:
这是知道扩展名的长度,但有时 扩展名的长度是不固定的,那么我们就可以省略substr()方法的第二个参数,直接获取字符“.”后全部字符即可:
var str="../img/1.png"; var b = str.substr(str.lastIndexOf(".")+1 ); console.log(b); var str="../img/1.jpeg"; var b = str.substr(str.lastIndexOf(".")+1 ); console.log(b);
输出结果:
好了,就说到这里了,有需要的可以看:javascript高级教程
以上是JS字符串学习之通过截取子串的方式返回文件扩展名的详细内容。更多信息请关注PHP中文网其他相关文章!

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Atom编辑器mac版下载
最流行的的开源编辑器

记事本++7.3.1
好用且免费的代码编辑器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。