substring,substr,和slice的区别详解。
1.Substring(x,y) : 输出一个字符串,当其中只有一个参数时,会输出从x开始到结尾的String。
举例:
var str="hello";
console.log(str.substring(1));
输出结果为ello
如果有两个参数,则会输出从x到y的值,值得注意的时候,这里的x ,y可以理解成一个
(x, y]的区间,即不包含第x个元素,但包含第y个元素, x,y均从1开始计算
举例:
var str="helloworld";
console.log(str.substring(2,5));
输出结果为llo。
另外当x<y的情况时,系统会自动调整x,y的位置并输出也就是说
var str="helloworld";
console.log(str.substring(5,2));
这俩个结果是一样的。
如y为负值,则直接输出为x之前的字符串
举例
var str="helloworld";
console.log(str.substring(3,-5));
结果为hel;
2.Substr(x,y): 和substring不同,substr内的x,y属性分别代表元素的起始位置,及输出的元素长度。举例:
var str="helloworld";
console.log(str.substr(2,5));
输出结果为:llowo
因为x,y两个参数的属性不同,所以相互调换位置时,并没有歧义,而是正常输出。但当y为负值时,则为空。
举例:
var str="helloworld";
console.log(str.substr(3,-5));
结果为空
3.slice(x,y) 和substring类似,都是返回一个(x, y]区间的字符串,唯一不同需要注意的情况是,如果x>y的情况发生,则会产生一个空,而不会自动调换位置。举例:
var str="helloworld";
console.log(str.slice(2,5));
输出结果为llo
var str="helloworld";
console.log(str.slice(5,2));
结果为空
特别注意,在这里y可以为负值。输出的的是y+length之后的长度,举例:
var str="helloworld";
console.log(str.slice(3,-2));
输出结果为 其length值为10,则真实输出应为
3,(10-2); 结果为lowor
substring,substr,和slice的区别详解。的更多相关文章
- JS中数组和字符串具有的方法,以及substring,substr和slice的用法与区别
String 对象属性 属性 描述 constructor 对创建该对象的函数的引用 length 字符串的长度 prototype 允许您向对象添加属性和方法 String 对象方法 方法 描述 ...
- Bind和Eval的区别详解
原文:Bind和Eval的区别详解 1.简单描述Eval和Bind的区别 绑定表达式 <%# Eval("字段名") %> <%# Bind("字段名& ...
- Go学习——new()和 make()的区别详解(转载)
这篇文章主要介绍了Go语言中new()和 make()的区别详解,本文讲解了new 的主要特性.make 的主要特性,并对它们的区别做了总结,需要的朋友可以参考下 概述 Go 语言中的 new 和 m ...
- linux中cat、more、less命令区别详解##less 最合适最好用,和vim一样好用
linux中cat.more.less命令区别详解 caoxinyiyi关注 0.0362018.07.02 15:46:17字数 641阅读 516 linux中命令cat.more.less均可用 ...
- 基于Java的打包jar、war、ear包的作用与区别详解
本篇文章,小编为大家介绍,基于Java的打包jar.war.ear包的作用与区别详解.需要的朋友参考下 以最终客户的角度来看,JAR文件就是一种封装,他们不需要知道jar文件中有多少个.cla ...
- Android中Intent传值与Bundle传值的区别详解
Android中Intent传值与Bundle传值的区别详解 举个例子我现在要从A界面跳转到B界面或者C界面 这样的话 我就需要写2个Intent如果你还要涉及的传值的话 你的Intent就要写两 ...
- php 去除html标记--strip_tags与htmlspecialchars的区别详解
php 去除html标记--strip_tags与htmlspecialchars的区别详解 作者: 字体:[增加 减小] 类型:转载 时间:2013-06-26 本篇文章是对php中去除html ...
- HTTP POST GET 本质区别详解
HTTP POST GET 本质区别详解 一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式:在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交 Ht ...
- javascript中=、==、===区别详解
javascript中=.==.===区别详解今天在项目开发过中发现在一个小问题.在判断n==""结果当n=0时 n==""结果也返回了true.虽然是个小问题 ...
随机推荐
- 2016年12月17日 星期六 --出埃及记 Exodus 21:12
2016年12月17日 星期六 --出埃及记 Exodus 21:12 "Anyone who strikes a man and kills him shall surely be put ...
- notePad++ 使用
Ctrl+L 删除当前行 Ctrl+D 复制 Alt +鼠标 列选中 鼠标选中行首 点一下形成一标识,用F2 可以切换标识 C:\Users\纯访\AppData\Roaming\Microsoft ...
- int与string之间的类型转换--示例
package demo; public class IntDemo { public static void main(String[] args) { // String-->int 类型转 ...
- 《BI项目笔记》用Excel2013连接和浏览OLAP多维数据集
用Excel2013连接和浏览OLAP多维数据集
- 关于web2py外网访问,图形界面不显示等问题的解决办法
首先系统版本是ubuntu 15.04,系统默认安装了两个版本的python, sudo python web2py.py 默认会调用python2.7版本来执行 会提示 pydo@planpls:/ ...
- JavaScript中的Math对象
Math对象中提供的计算功能执行起来比你在代码中写的js要快得多,这是它的一个很好的优点. 属性: 属性 说明 Math.E 即常量e的值 Math.LN10 ln10 Math.LN2 ln2 ...
- 了解less跟sass
less官网:http://www.bootcss.com/p/lesscss/ LESS编写技巧分享:http://www.xuanfengge.com/less-writing-skills-sh ...
- 网络内容缓存CDN的工作原理
网络内容缓存CDN的工作原理 CDN的全称是Content Delivery Network,即内容分发网络CDN的目的就是提高用户访问网站的响应速度提速的基本思路例如你的网站服务器是在北京,这时有一 ...
- stm32cube--IWDG使用
IWDG使用的是32芯片内部的40k独立晶振,该晶振为rtc和iwdg提供时钟,即使是主时钟坏了也不影响它们. 主要用到三个寄存器, IWDG_KR 键值寄存器 IWDG_PR 预分频寄 ...
- equals方法的小结
尽管经常使用equals,也可能理解不一定神,最近又要使用Collections.sort看到了这些,总结的不错. 首先equals方法必须满足自反性.对称性.传递性和一致性. 自反性(x.equal ...