js里slice,substr和substring的区别
概要:
string.slice(start, end)提取一个字符串
string.substring(start, end)提取一个字符串,end不支持负数 string.substr(start, len)提取一个长度为len的字符串
1、slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度。直接看下面例子:
var test = 'hello world';
alert(test.slice(4,7)); //o w
alert(test.substring(4,7)); //o w
alert(test.substr(4,7)); //o world
2、substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置。如:
alert(test.substring(7,4)); //o w
3、当接收的参数是负数时,slice会将它字符串的长度与对应的负数相加,结果作为参数;substr则仅仅是将第一个参数与字符串长度相加后的结果作为第一个参数;substring则干脆将负参数都直接转换为0。测试代码如下:
var test = 'hello world'; alert(test.slice(-3)); //rld
alert(test.substring(-3)); //hello world
alert(test.substr(-3)); //rld
alert(test.slice(3,-4)); //lo w
alert(test.substring(3,-4)); //hel
alert(test.substr(3,-4)); //空字符串
以下来自《JavaScript权威指南》p834:
参考
1、slice,substr和substring的区别 - 肥杜 - 博客园
http://www.cnblogs.com/littledu/archive/2011/04/18/2019475.html
js里slice,substr和substring的区别的更多相关文章
- 【转】slice,substr和substring的区别
首先,他们都接收两个参数,slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度.直接看下面例子: var test = ' ...
- slice,substr和substring的区别
首先,他们都接收两个参数,slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度.直接看下面例子: var test = ' ...
- Js中的subStr和subString的区别
/** * Created by lonecloud on 16/9/8. */ var str="HelloWorld"; /** * 这里的两个参数第一个是从0到第几个开始第二 ...
- js截取字符串substr和substring的区别
定义substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符.substring() 方法用于提取字符串中介于两个指定下标之间的字符. 语法substr() str ...
- JavaScript进阶(七)JS截取字符串substr 和 substring方法的区别
JS截取字符串substr 和 substring方法的区别 substr方法 返回一个从指定位置开始的指定长度的子字符串. stringvar.substr(start [, length ]) 参 ...
- js中的substr和substring区别
js中的substr和substring区别 Substring: 该方法可以有一个参数也可以有两个参数. (1) 一个参数: 示例: var str=“Olive”: str.substring( ...
- 字符串和数组中split().toString(),join(),splice(),slice(),substr()和substring()
<!Doctype html> <head> <mate charset="utf-8"> <title>string change ...
- 字符串截取 及 substr 和 substring 的区别
1..字符串截取 str.substr(0, 1) // 获取字符串第一个字符 str.substr(-1) // 获取字符串最后一个字符 str.charAt(str.length - 1) // ...
- js中slice(),splice(),split(),substring(),substr()的使用方法和区别
1.slice(): Array和String对象都有 在Array中 slice(i,[j]) i为开始截取的索引值,负数代表从末尾算起的索引值,-1为倒数第一个元素j为结束的索引值,缺省时则获取 ...
随机推荐
- sql server操作类(本人自己写的)
package com.mytest; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepa ...
- Codeforces Round #347 (Div. 2) (练习)
A: 题意:找到[a, b]的最大公约数: 思路:相同时为本身,不同时为1. 套路:碰到水题别想太多: 猜想:两个相邻数,必有一奇一偶,如果偶数有因子3或者其他,奇数可不可能有相同的呢? 枚举一些数后 ...
- laravel中如何写验证码文件,并防止中文乱码.
本例为生成中文验证码,专为laravel而生. //控制器: public function getVcode(Request $request){ $width=845; $height=125; ...
- virtualbox下面安装ubuntu后外网如何远程ssh访问
这两天在折腾virtualbox安装linux的事情,想多弄几个节点,装hadoop, 环境如下 两台thinkpad, 一台正常上班用的,win7 一台装的ubuntu kylin 16.04, 上 ...
- 【Visual Lisp】图元选择集专题
图元选择集专题;;★★★01.选择集操作★★★(setq ss (ssadd));;创建一个空选择集(ssadd (car(entsel)) ss);;将点取的图元添加到ss选择集中,可以不用setq ...
- Windows Phone 8.1 新特性 - 控件之列表选择控件
本篇我们来介绍Windows Phone 8.1 新特性中的列表选择控件. 在Windows Phone 8 时代,大家都会使用 LongListSelector 来实现列表选择控件,对数据进行分组显 ...
- iOS进阶_三方使用步骤
一.配置环境(:后为在终端输入的命令) 打开终端 查看自己电脑的Ruby环境:gem sources -l 如果环境已经是淘宝镜像了,此时不需要再进行环境的修改. 如果不是,发送gem sources ...
- HTML5中id可以用数字开头,但在css中不能正常使用
昨晚在看<响应式Web设计:html5和css3实战>时,书中提到“HTML5中的ID指可以用数字开头”.这个还真不知道,于是测试了一下,发现了问题. 在H5描述中是这样说的: 在css样 ...
- springmvc No mapping found for HTTP request with URI in Dispatc
springmvc No mapping found for HTTP request with URI in Dispatc 博客分类: Java Web springmvcspring MVCNo ...
- oracle入门必备
//................创建表空间 \ 赋予角色 \ 创建数据表 \ 插入数据 \ 创建序列 \ 添加注释 ........................... --创 ...