slice,substr,substring的区别
2024-08-30 15:14:50
<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script>
var str="123456";
console.log(str.slice(0));
console.log(str.slice(0,4));
console.log(str.slice(0,-1));
console.log(str.slice(-1));
console.log(str.slice(-5)); //123456|1234|12345|6|23456 console.log(str.substr(0));
console.log(str.substr(0,4));
console.log(str.substr(0,-1));
console.log(str.substr(-1));
console.log(str.substr(-5)); //123456|1234|空字符串|6|23456 console.log(str.substring(0));
console.log(str.substring(0,4));
console.log(str.substring(4,0))
console.log(str.substring(0,-1));
console.log(str.substring(-1));
//123456|1234|1234|空字符串|123456
/**
* 总结三者的区别:
* 1、substring(start,end)和slice(start,end)都表示提取从start下标开始(包括该下标上的字符)到end下标结束(不包括该下标上的字符)之间的内容,如果不包含end参数则表示提取从start到结尾的全部字符
* 2、substring不支持负数参数(如果为负数则转换为0来处理),slice支持负数参数(如果参数为负数则表示从最右边算起,例1第一行中的0为-1,1为-2);substring如果start>end则互相交换,而slice则不支持交换
* 3、substr其实是不是作为ECMAScript标准发布的,因此各种浏览器之间不是兼容的,但是既然提出来了还是讲一下substr(start,length)函数可以看出其实和上面两种函数的差别,即第二个参数代表的是截取的长度,不再是作为结尾下标来处理,所以该函数表示从开始下标start开始,向右截取length个长度的字符。按照w3c上来讲start是支持负数的,即表示从字符传的结尾开始计算,但是因为该函数并不是标准里的所以各浏览器实现不一,所以还是不建议用负数了。length为负数则不会截取任何字符,因为长度不可能为负的
*/ </script>
</head>
<body>
<div>TODO write content</div> </body>
</html>
最新文章
- Core functionality.md
- 1080P、720P、4CIF、CIF所需要的理论带宽
- TCP/IP详解学习笔记(1)-- 概述
- HDU 1068 Girls and Boys (二分图最大独立集)
- 浅谈android应用性能之内存(转)
- JBPM4 常用表结构及其说明
- spring中context:property-placeholder/元素 转载
- MemCachedClient数据写入的三个方法
- bui上手体验
- 在Activity中动态设置TextView的隐藏属性
- 计时器中qq上的一个功能,延时作用
- hdu 4888 Redraw Beautiful Drawings 网络流
- node.js高效操作mongodb
- ubuntu12.04 内核编译 记录
- linux系统安装redis
- linux下查找堆栈信息例子
- 【Java每日一题】20170215
- python安装pip管理工具
- sql server紧急状态下登录脚本
- iOS开发(3):tips提示 | 如何提示一行文字或一个图片
热门文章
- Brackets POJ - 2955
- 在Windows上安装和配置Jenkins
- @ApiParam @RequestParam @PathVariable 用法
- Java:追加文件内容
- 对于easyui $.messager.alert和 $.messager.confirm 不同浏览器中位置控制
- c#导出word文档
- Pychorm提示Unresolved reference 导入模块报错
- [Kubernetes]Volume
- POJ2455 Secret Milking Machine【二分,最大流】
- 关于NSArray的去重