JS中数组和字符串具有的方法,以及substring,substr和slice的用法与区别
String 对象属性
属性 |
描述 |
constructor |
对创建该对象的函数的引用 |
字符串的长度 |
|
prototype |
允许您向对象添加属性和方法 |
String 对象方法
方法 |
描述 |
创建 HTML 锚。 |
|
用大号字体显示字符串。 |
|
显示闪动字符串。 |
|
使用粗体显示字符串。 |
|
返回在指定位置的字符。 |
|
返回在指定的位置的字符的 Unicode 编码。 |
|
连接字符串。 |
|
以打字机文本显示字符串。 |
|
使用指定的颜色来显示字符串。 |
|
使用指定的尺寸来显示字符串。 |
|
从字符编码创建一个字符串。 |
|
检索字符串。 |
|
使用斜体显示字符串。 |
|
从后向前搜索字符串。 |
|
将字符串显示为链接。 |
|
用本地特定的顺序来比较两个字符串。 |
|
找到一个或多个正则表达式的匹配。 |
|
替换与正则表达式匹配的子串。 |
|
检索与正则表达式相匹配的值。 |
|
提取字符串的片断,并在新的字符串中返回被提取的部分。 |
|
使用小字号来显示字符串。 |
|
把字符串分割为字符串数组。 |
|
使用删除线来显示字符串。 |
|
把字符串显示为下标。 |
|
从起始索引号提取字符串中指定数目的字符。 |
|
提取字符串中两个指定的索引号之间的字符。 |
|
把字符串显示为上标。 |
|
把字符串转换为小写。 |
|
把字符串转换为大写。 |
|
把字符串转换为小写。 |
|
把字符串转换为大写。 |
|
toSource() |
代表对象的源代码。 |
返回字符串。 |
|
返回某个字符串对象的原始值。 |
Array 对象属性
属性 |
描述 |
返回对创建此对象的数组函数的引用。 |
|
设置或返回数组中元素的数目。 |
|
使您有能力向对象添加属性和方法。 |
Array 对象方法
方法 |
描述 |
连接两个或更多的数组,并返回结果。 |
|
把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。 |
|
删除并返回数组的最后一个元素 |
|
向数组的末尾添加一个或更多元素,并返回新的长度。 |
|
颠倒数组中元素的顺序。 |
|
删除并返回数组的第一个元素 |
|
从某个已有的数组返回选定的元素 |
|
对数组的元素进行排序 |
|
删除元素,并向数组添加新元素。 |
|
返回该对象的源代码。 |
|
把数组转换为字符串,并返回结果。 |
|
把数组转换为本地数组,并返回结果。 |
|
向数组的开头添加一个或更多元素,并返回新的长度。 |
|
返回数组对象的原始值 |
一、substring,substr和slice比较
1.substring
substring() 方法用于提取字符串中介于两个指定下标from和to之间的字符,返回的子串包括 开始 处的字符,但不包括 结束 处的字符。。
语法:string.substring(from, to)
参数 | 描述 |
---|---|
from | 必需。一个非负的整数,规定要提取的子串的第一个字符在 string Object 中的位置。(负参数都直接转换为0) |
to | 可选。一个非负的整数,比要提取的子串的最后一个字符在 string Object 中的位置多 1。 如果省略该参数,那么返回的子串会一直到字符串的结尾。 |
注意:
1.strvar.substring(from[, to])将返回一个包含从 from到to(不包含 to)的子字符串的字符串。
2.substring 方法使用 from和 to两者中的较小值作为子字符串的起始点。例如,
strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串。
3.如果 from或 to为 NaN 或者负数,那么将其替换为0。
4.子字符串的长度等于 from和 to之差的绝对值。例如,在 strvar.substring(0, 3) 和
strvar.substring(3, 0) 返回的子字符串的的长度是 3。
5.字符串中第一个字符位置为 0, 第二个字符位置为 1, 以此类推。
2.slice
slice(start, end) 方法可提取从start(包含) 到 end(不包含)字符串的某个部分,并以新的字符串返回被提取的部分。
语法:string.slice(start,end)
参数值
参数 | 描述 |
---|---|
start | 必须. 要抽取的片断的起始下标。第一个字符位置为 0 |
end | 可选。 紧接着要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置(=将此负数与字符串的长度相加得到的正向索引)。 |
返回值
类型 | 描述 |
---|---|
String | 提取的字符串 |
注意: 如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。=将此负数与字符串的长度相加得到的正向索引。
3.substr
substr() 方法可在字符串中抽取从 开始 下标开始的指定数目的字符。
语法:string.substr(start,length)
参数值
参数 | 描述 |
---|---|
start | 必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推(=将此负参数与字符串长度相加后的结果作为第一个参数)。 |
length | 可选。子串中的字符数。必须是数值。如果 length 为 0 或负数,将返回一个空字符串;如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。 |
返回值
类型 | 描述 |
---|---|
String | A new string containing the extracted part of the text |
注意:
1.stringvar.substr(start [, length ])的参数指定的是子串的开始位置和长度,因此它可以替代 substring() 和 slice() 来使用。
2.在 IE 4 中,参数 start 的值无效。在这个 BUG 中,start 规定的是第 0 个字符的位置。在之后的版本中,此 BUG 已被修正。ECMAscript 没有对该方法进行标准化,因此反对使用它。
3.substr() 方法不会改变源字符串。
总结不同点
1.第二个参数不同
2.当接收的索引参数是负数时:
slice会将它字符串的长度与对应的负数相加,结果作为参数;
substr则仅仅是将第一个参数与字符串长度相加后的结果作为第一个参数;
substring则干脆将负参数都直接转换为0。
总结相同点
如果只是写一个参数,三者的作用都是一样的:截取字符串当前下标以后直到字符串最后的字符串片段。
二、slice和splice比较
1.slice语法
参数 Values
参数 | 描述 |
---|---|
start | 必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。 |
end | 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。 |
返回值
Type | 描述 |
---|---|
Array | 返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。 |
2.splice语法
参数 Values
参数 | 描述 |
---|---|
index | 必需。规定从何处添加/删除元素。 该参数是开始插入和(或)删除的数组元素的下标,必须是数字。 |
howmany | 必需。规定应该删除多少元素。必须是数字,但可以是 "0"。 如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。 |
item1, ..., itemX | 可选。要添加到数组的新元素 |
返回值
Type | 描述 |
---|---|
Array | 如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。 |
JS中数组和字符串具有的方法,以及substring,substr和slice的用法与区别的更多相关文章
- js中数组去重的几种方法
js中数组去重的几种方法 1.遍历数组,一一比较,比较到相同的就删除后面的 function unique(arr){ ...
- JS中数组和字符串的方法大全
数组的方法很多,ECMScript5又提供了好几种方法.有空把之前的云上的笔记整理了一下,方便自己以后查找使用. 一.ECMScript 3的Array.prototype中定义的方法 1.join( ...
- JS中数组和字符串方法的简单整理
一.数组: 数组的基本方法: 1.增:arr.unshift() /push() 前增/后增 2.删:arr.shift() /pop ...
- js中数组、字符串、日期、数学API方法一览
以下内容摘选自 http://www.w3school.com.cn/jsref/jsref_obj_array.asp 点击方法新窗口打开详解 数组: 方法 描述 concat() 连接两个或更多的 ...
- js中数组的字符串表示
<html> <head> <title>数组的字符串表示</title> <script type="text/javascript& ...
- 【js中数组和字符串的相互转换】
一.数组转字符串 //数组转字符串 var a, b; a = new Array(0,1,2,3,4); b = a.join(","); //得到字符串 二.字符串转数组 // ...
- js中数组和字符串的方法总结
一.数组方法简单总结为以下几种 1.原有: 增.删.改.截.拼.复.排.转 2.ES5扩展: 查.遍历 增: 前增 ,,,,]; console.log(arr.unshift(,,[ console ...
- JS中数组与对象的遍历方法实例小结
一.数组的遍历: 首先定义一个数组 1 arr=['snow','bran','king','nightking']; 1.for循环,需要知道数组的长度; 2.foreach,没有返回值,可以不知道 ...
- js中数组遍历的几种方法及其区别
参考网站: http://www.cnblogs.com/lvmh/p/6104397.html 第一种最常用的:for循环 for(j = 0; j < arr.length; j++) { ...
随机推荐
- CF 987 D. Fair
D. Fair http://codeforces.com/contest/987/problem/D 题意: n个城镇m条道路,(保证没有重边,两个城镇间可以到达),每个城镇拥有的特产ai(可能多个 ...
- Jlink v8仿真器在64位系统上刷固件
1. 安装软件sam-ba_2.16.exe.本次主要是Jlink v8在64位系统下面的刷固件方法. 2. J-link通过USB连接至电脑,短接PCB上标号为ERASE的焊盘5秒,断开ERASE两 ...
- iOS 小技巧
投影效果 scanBtn.layer.shadowColor = [UIColorblackColor].CGColor;//shadowColor阴影颜色 scanBtn.layer.sha ...
- python全栈开发-前方高能-生成器和生成器表达式
python_day_13 今日主要内容1. 生成器和生成器函数生成器的本质就是迭代器生成器的三种创建办法: 1.通过生成器函数 2.通过生成器表达式创建生成器 3.通过数据转换 生成器函数: 函数中 ...
- WebGL树形结构的模型渲染流程
今天和大家分享的是webgl渲染树形结构的流程.用过threejs,babylonjs的同学都知道,一个大模型都是由n个子模型拼装而成的,那么如何依次渲染子模型,以及渲染每个子模型在原生webgl中的 ...
- 牛客网暑期ACM多校训练营(第一场):E-Removal(DP)
链接:E-Removal 题意:给出序列 s1, s2, ..., sn ,1<=s[i]<=10.问删除m个数后,有多少种不同的序列. 题解:定义dp[i][j]代表长度为i,最末尾的数 ...
- Codeforces 552 E. Two Teams
E. Two Teams time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...
- 无法找到 ContextLoaderListener 类
问题:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 原因:Eclips ...
- 大前端-全栈-node+easyui+express+vue+es6+webpack+react
作者声明:本博客中所写的文章,都是博主自学过程的笔记,参考了很多的学习资料,学习资料和笔记会注明出处,所有的内容都以交流学习为主.有不正确的地方,欢迎批评指正 视频来源:https://www.bil ...
- 20172332『Java程序设计』课程结对编程练习_四则运算第二周阶段总结
20172313『Java程序设计』课程结对编程练习_四则运算第二周阶段总结 小组成员 20172326康皓越 20172313余坤澎 20172332于欣月 小组编程照片 设计思路 设计一个生成符号 ...