JavaScript中的slice,splice,substr,substring,split的区别
万恶的输入法,在sublime中会显示出繁体字,各位看官见谅。
1.slice()方法:该方法在数组和string对象中都拥有。
var a = [1,2,3,4,5,6];
var s = 'this is a string';
console.log(a.slice(1,3));//結果為 [2,3];
console.log(a.slice(-1);//結果為6;
console.log(s.slice(1,3));//結果為 hi;
console.log(s);//結果為 this is a string;
//obj.slice(i,j);其中i為必須,其為從何處開始截取。如果為負數的話,那麼將會從尾數開始截取,-1指倒數一個,-2表示倒數第二個
//同時j為選填項,是數組片段結束處的數組下標。如果為負數,則從尾部算起。
console.log(a);//[1,2,3,4,5,6],注意該方法並不會修改數組,而是返回一個子數組。
2.splice()方法:非常强大的一个数组删改方法。与slice相比,其会改变数组本身
var a = [1,2,3,4,5,6];
console.log(a.splice(2));//[3, 4, 5, 6]
//splice(i,j,item)其中i為必須,其為從何處開始截取。如果為負數的話,那麼將會從尾數開始截取
//其中j必填項,為要截取的項目數量,為0的話,那麼其不會對數組進行刪改,
var b = [2,6,8,5,7];
console.log(b.splice(2,0,5,6,7));// []
console.log(b);//[2, 6, 5, 6, 7, 8, 5, 7]
//splice()會返回被刪除的項目;
3.substr()方法
var str = 'this is a string';
console.log(str.substr(2,3));//is
console.log(str);//this is a string
//substr()用於返回一個從指定位置開始的指定長度的子字符串
//substr(i,j);i必須,所需的子字符串的起始位置,字符串中的第一個字符串。
//j為返回字符串中包含的字符個數,注意:如果i為負數,那麼i=str.length+i;如果j為負數,則返回一個空字符串。
//其不會改變字符串本身;
由于ECMAscript中并没有将这个进行标准化,所以不推荐使用这个
4.substring()
var str = 'abcdefg';
//其返回一個包含i,不包含end的子串
//substring(i,j) i為必須,如果i=j,則返回一個空串,
console.log(str.substring(5,1));//bcde
//如果i<j,那麼在提取子串之前會先交換這兩個參數,
console.log(str);//abcdefg
//如上面可見,substring不會對字符串進行刪改
console.log(str.substring(-4));//abcdefg
console.log(str.substring(3,-1));//abc
//如果i或j為負數,那麼它將被替換成0
5.split()方法:
var str = 'ab c e f g';
console.log(str.split('',));//["a", "b", " "]
console.log(str);//ab c e f g
console.log(str.split(' '));//["ab", "c", "e", "f", "g"]
console.log(str.split(''));//["a", "b", " ", "c", " ", "e", " ", "f", " ", "g"]
console.log(str.split('',));//["a", "b", " "]
JavaScript中的slice,splice,substr,substring,split的区别的更多相关文章
- slice,splice,substr,substring函数的区别
slice: 语法:array.slice(startIndex,endIndex); 参数: startIndex:必须,规定从何处开始选取,如果为负则从尾部开始计算 : endIndex:可选,规 ...
- JavaScript 中定义变量时有无var声明的区别
关于JavaScript中定义变量时有无var声明的区别 var a=5; //正确 a=5; //正确 在javascript中,以上两种方法都是定义变量的正确方法.微软的Script56.CHM中 ...
- JavaScript中querySelector()和getElementById()(getXXXByXX)的区别
在日常开发中,使用JavaScript获取元素的时候,最常用的方法就是document.getElementById(getXXXByXX)方法.但是最近发现有很多地方使用的是querySelecto ...
- javascript中的slice()方法
JavaScript中的Array对象提供了一个slice()方法,用于从已有的数组中返回选定的元素. arrayObject.slice(start, end) 参数说明 start 必需(否则没有 ...
- JavaScript中的 函数splice() 的使用。
大二接触JavaScript初期,学习函数中有一道题: 定义一个2个参数的函数.第1个参数是一个数组,第2个参数是需要删除的元素.函数功能,在第1个实参数组中查找第2个实参提供的值,找到则删除该元素( ...
- 巧用Javascript中的slice()
slice()是Javascript中Array的一个方法,定义是这样的. arrayObject.slice(start,end)作用是从原数组中从start到end位置截取出一个新的数组,返回值是 ...
- JavaScript中instanceof与typeof运算符的用法及区别详细解析
JavaScript中的instanceof和typeof常被用来判断一个变量是什么类型的(实例),但它们的使用还是有区别的: typeof 运算符 返回一个用来表示表达式的数据类型的字符串. typ ...
- javaScript中的return,break,continue的区别
导语: javaScript中有三种方法可以跳出循环或者终止循环.分别为break.return.continue. 正文: 一.break break 会使得整个程序终止执行或者包含了最内层的循环或 ...
- JavaScript中的三种弹出框的区别与使用
JavaScript中有三种原生的弹出框,分别是alert.confirm.prompt.分别表示弹出框.确认框.信息框. 以下是示例代码: <!DOCTYPE html> <htm ...
随机推荐
- Spring MVC数据校验
在web应用程序中,为了防止客户端传来的数据引发程序异常,常常需要对 数据进行验证.输入验证分为客户端验证与服务器端验证.客户端验证主要通过JavaScript脚本进行,而服务器端验证则主要通过Jav ...
- servlet使用入门
创建web工程servlet,然后新建TestServlet.java package com.xmyself.servlet; import java.io.IOException; import ...
- CentOs7 +Jexus 5.8.2部署Asp.Net Core WebApi 1.0生产环境
Jexus 是一款运行于 Linux 平台,以支持 ASP.NET.PHP 为特色的集高安全性和高性能为一体的 WEB 服务器和反向代理服务器.最新版 5.8.2 已经发布,有如下更新: 1,现在大 ...
- 一不小心写了个WEB服务器
开场 Web服务器是啥玩意? 是那个托管了我的网站的机器么? No,虽然那个也是服务器,但是我们今天要说的Web服务器主要是指像IIS这样一类的,用于处理request并返回response的工具,没 ...
- iOS--高级技术
1.iOS---搜索功能 2.iOS--通讯录.蓝牙.内购.GameCenter.iCloud.Passbook等系统服务开发汇总 3.iOS-技巧性总结 4.iOS-调试技巧 5.iOS-即时通讯- ...
- 00.Web大前端时代之:HTML5+CSS3入门系列~Bug反馈文章
感谢广大网友的热心提醒,现已发现如下错误: 感谢 “ ”对画布笔记系列的反馈(QQ:350223285) 这个是失误,strokeStyle和stroke对应 待续.... 欢迎提出更多问题,感谢大家 ...
- PHP的学习--新特性
最近做的项目使用了 php7,但感觉有很多新特性没有用起来.就想总结一下,一些可能会用到的新特性.之前使用的环境是 php5.4,所有也会有 php5.5 和 php5.6 的特性总结进来,这里只列出 ...
- ASM磁盘组扩容流程
环境:RHEL 6.5 + GI 11.2.0.4 + Oracle 11.2.0.4 1.确认磁盘权限正确 2.图形界面配置 3.启用asmca配置 4.修改磁盘组rebalance power级别 ...
- Error:const char* 类型的实参和LPCWSTR类型的形参不兼容的解决方法。
在C++的Windows 应用程序中经常碰到这种情况. 解决方法: 加入如下转换函数: LPCWSTR stringToLPCWSTR(std::string orig) { size_t origs ...
- 数百个 HTML5 例子学习 HT 图形组件 – WebGL 3D 篇
<数百个 HTML5 例子学习 HT 图形组件 – 拓扑图篇>一文让读者了解了 HT的 2D 拓扑图组件使用,本文将对 HT 的 3D 功能做个综合性的介绍,以便初学者可快速上手使用 HT ...