今天遇到这个问题,发现ぜんぜんわすねまます
3个方法,直接上代码吧,[网络版本较多就不注明参考过哪些了 -0- ]

     var test = 'hello world';

     //均一位参数测试
console.log(test.slice()); //llo world
console.log(test); //hello world
console.log(test.substr()); //llo world
console.log(test); //hello world
console.log(test.substring()); //llo world
console.log(test); //hello world
//---1个整数传参返回结果一样,亦不会影响原来的字符串
console.log(test.slice(-)); //ld
console.log(test); //hello world
console.log(test.substr(-)); //ld
console.log(test); //hello world
console.log(test.substring(-)); //hello world
console.log(test); //hello world
// //---1个负数传参不会影响原来的字符串
// //str.slice(a); str.substr(a);返回结果为字符串从右往左两位
// //而 str.substring();则返回字符串本身 //均两位参数测试
console.log(test.slice(,)); //o w
console.log(test); //hello world
console.log(test.substr(,)); //o world
console.log(test); //hello world
console.log(test.substring(,)); //o w
// console.log(test); //hello world
//第2位传参为正整数
//1.都不会改变原有str的长度
//2.str.slice(a,b); str.substring(a,b);
//均为下标0起,由下标a到下标b截取的值
// str.substr(a,b); //与前两个方法有区别
//获得结果为截取下标0起,由下标a起往后b位下标 console.log(test.slice(,-)); //o wo
console.log(test); //hello world
console.log(test.substr(,-)); // (空)
console.log(test); //hello world
console.log(test.substring(,-)); //hell
console.log(test); //hello world
//第2位传参为负整数
//1.都不会改变原有str的长度
//2.test.slice(a,b); 获得为下标0起,由下标a起往后b位下标截取(下标0起,即-3为下标4)
// test.substr(a,b); 返回为空
// test.substring(a,b); 获得为下标0起,由下标a起往前b位下标截取(下标0起,即-3为下标4)

[javascript string] slice();substr();substring();之间的区别的更多相关文章

  1. JavaScript取子串方法slice,substr,substring对比表

    在程序语言中,字符串可以说是最常用的一种类型,而在程序中对字符串的操作也是十分频繁.当程序语言自带多种字符串操作的方法时,用该语言编程程序时就有很多的便利性,提高开发的效率.但是当方法过多,甚至目的相 ...

  2. slice splice(数组) 和 slice substr substring split (字符串)的区别

    array.slice(start,end)slice()如果不传入参数二,那么将从参数一的索引位置开始截取,一直到数组尾如果两个参数中的任何一个是负数,array.length会和它们相加 stri ...

  3. JavaScript中this和$(this)之间的区别以及extend的使用

    jQuery中this和$(this)之间的区别: this返回的是当前对象的html对象,而$(this)返回的是当前对象的jQuery对象 举个正确的Demo实例: $("#textbo ...

  4. JavaScript中的slice,splice,substr,substring,split的区别

    万恶的输入法,在sublime中会显示出繁体字,各位看官见谅. 1.slice()方法:该方法在数组和string对象中都拥有. var a = [1,2,3,4,5,6]; var s = 'thi ...

  5. slice,substr,substring的区别

    <!DOCTYPE html> <!-- To change this license header, choose License Headers in Project Prope ...

  6. slice,splice,substr,substring函数的区别

    slice: 语法:array.slice(startIndex,endIndex); 参数: startIndex:必须,规定从何处开始选取,如果为负则从尾部开始计算 : endIndex:可选,规 ...

  7. substr和substring之间的区别

    substr 和 substring都是JS 截取字符串函数,两者用法很相近,下面是两者的语法很示例: substr 方法 返回一个从指定位置开始的指定长度的子字符串.stringvar.substr ...

  8. slice,substr,substring

    var s = '0123456789';   //slice 遇负数,则此负数值等同于 s.length + (负数) s.slice(3,6); //"345", 从位置3开始 ...

  9. js截取字符串方法整理slice(), substr(), substring(), split()

      substr(start,length) stringObject.substr(start,length) //start,截取起始下标,-1 指字符串最后一个字符,-2 指倒数第二个字符开始 ...

随机推荐

  1. leetcode第一题两数之和击败了 98.11% 的用户的答案(C++)

    虽然题目简单,但我这好不容易优化到前2%,感觉也值得分享给大家(方法比较偷机) 题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们 ...

  2. Supermap/Cesium 开发心得----定位

    SuperMap的WebGL是基于开源JS库Cesium做的修改而形成的产品,理论上用起来大同小异,如果在有不一样的地方再看,基本上还是与Cesium的接口名称和结构是一样的. 定位方法有基于Cesi ...

  3. QT--TCP网络编程(客户端/服务器)

    QT -----TCP网络编程   1.主要流程 1.客户端 创建QTcpSocket对象 连接到服务器 --connectToHost() 发送数据 ---write() 读取数据 ---readA ...

  4. keras图片数据增强ImageDataGenerator

    datagen = ImageDataGenerator( rotation_range=40, width_shift_range=0.2, height_shift_range=0.2, shea ...

  5. 原生js的2048的制作过程

    1.首先我们来看一下效果图 开始: 结束: 接下来我们来实现代码部分: HTML部分: 2048大家应该都玩过,首先我们要准备16个盒子让它4*4排列,这里的css我就不说了,这应该使我们都会的,在这 ...

  6. Java集合内容

    Java的集合类定义在java.util包中,支持泛型,主要提供了3种集合类,包括List,Set和Map.Java集合使用统一的Iterator遍历. 1.List遍历 实现了Iterator接口的 ...

  7. (转)Python中的常见特殊方法—— repr方法

    原文链接:https://www.cnblogs.com/tizer/p/11178473.html 在Python中有些方法名.属性名的前后都添加了双下划线,这种方法.属性通常都属于Python的特 ...

  8. JVM G1垃圾回收算法简要介绍

    JVM G1垃圾回收算法简要介绍 G1的特点 能够像CMS垃圾回收算法一样并发操作应用线程(潜台词:多核) 无需太长时间即可压缩空闲内存空间(潜台词:不会引起太多的GC停顿时间) 尽可能地让GC时长可 ...

  9. [转]UIpath advanced certification dumps

    本文转自:https://dotnetbasic.com/2019/06/uipath-advanced-certification-dumps.html UiPath advanced certif ...

  10. js中关于带数字类型参数传参丢失首位数字0问题

    最近在项目中遇到一个问题,js中传带有数字的参数时,如果参数开头有数字0,会把0给去掉. 例如: 方法abc(0123456,789); 方法abc中获取的参数0123456就会变为123456. 原 ...