substring,substr,slice,splice,split

逆向实战:从x-mini签名到RPC调用,Frida动态分析小红书加密协议 本文通过实战案例,详细拆解了小红书App的加密协议逆向分析过程。从识别x-mini签名等关键参数入手,结合静态分析与Frida动态Hook技术,追踪到核心的RPC调用入口,并最终封装成可独立调用的RPC函数,为安全研究和协议理解提供了完整的技术路径。 阅读详情

split()函数用于使用指定分隔符分割字符串,并返回分割后的若干个子字符串组成的数组。

该函数属于String对象,所有主流浏览器均支持该函数。

语法:

stringObject.split( separator [, limit ] )

如果参数separator是字符串,则split()函数将直接根据该字符串进行分割,而不会试图转换为正则表达式。如果指定的separator参数为空字符串(""),那么stringObject中的每个字符之间都会被分割。

如果提供了limit参数,此函数返回的数组最多包含limit个元素。如果参数limit为负数,则该参数将被忽略掉。如果省略了limit,则split()函数不会考虑长度,直到分割完毕为止。如果limit为0,则返回空的数组。

返回值:

split()方法的返回值为Array类型,返回完成分割后的子字符串数组。子字符串中不会包含separator本身。

如果stringObject中不存在separator参数的匹配,则返回只包含原字符串的数组。

事例&说明:

var str = "张三 李四 王五 赵六";
// 以空格字符串进行分割
var array = str.split(" ");
document.writeln( array ); // 张三,李四,王五,赵六
document.writeln( array.length ); // 4

str = "张三12李四34王五5赵六";
// 以数字进行分割
array = str.split(/\d+/);
document.writeln( array ); // 张三,李四,王五,赵六
document.writeln( array.length ); // 4

str = "Google YouTube Gmail CodePlayer";
// 最多返回3个元素
array = str.split(" ", 3);
document.writeln( array ); // Google,YouTube,Gmail
document.writeln( array.length ); // 3

// limit为负数将被忽略掉
array = str.split(" ", -1);
document.writeln( array ); // Google,YouTube,Gmail,CodePlayer
document.writeln( array.length ); // 4

substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符.

stringObject.substr(start,length);start必须,length可选.

start 是截取的开始位置的下标,从0开始算起,必须是数字.可以是负数,-1是倒数第一个字符,-2是倒数第二个字符,以此类推.

length 是要截取的字符的长度,必须是数字.如果未指定,则从start位置处开始截取到字符串结尾.

substr 指定的是字符串的开始下标跟截取长度,所以可以替代substring跟slice使用.

重要事项:ECMAscript 没有对该方法进行标准化,因此反对使用它。

substring() 方法用于提取字符串中介于两个指定下标之间的字符。

stringObject.substring(start,end);start必须,end可选.

start 是截取的开始位置的下标,从0开始算起,必须是非负数字.(w3c说必须是非负整数,试验了下,不是整数也可以.)

end 必须是数字.如果未指定,则从start位置处开始截取到字符串结尾.

注意事项:substring截取的字符不包括end处的字符.所以截取的长度为end-start.

               start=end的话,返回空字符串,长度为0.

重要事项:substring不接收负的参数,slice和substr可以.

slice() 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。

stringObject.slice(start,end);start必须,end可选.

start 要抽取的片断的起始下标。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置。也就是说,-1 指字符串的最后一个字符,-2 指倒数第二个字符,以此类推。

end 紧接着要抽取的片段的结尾的下标。若未指定此参数,则要提取的子串包括 start 到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串的尾部开始算起的位置。

splice() 方法

定义和用法

splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。

注释:该方法会改变原始数组。

语法

arrayObject.splice(index,howmany,item1,.....,itemX)
参数 描述
index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX 可选。向数组添加的新项目。

返回值

类型 描述
Array 包含被删除项目的新数组,如果有的话。

说明

splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。

如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。

技术细节

JavaScript 版本: 1.2

浏览器支持

所有主流浏览器都支持 splice() 方法。

提示和注释

注释:请注意,splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改。

实例

例子 1

在本例中,我们将创建一个新数组,并向其添加一个元素:

<script type="text/javascript">

var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"

document.write(arr + "<br />")
arr.splice(2,0,"William")
document.write(arr + "<br />")

</script>

输出:

George,John,Thomas,James,Adrew,Martin
George,John,William,Thomas,James,Adrew,Martin

例子 2

在本例中我们将删除位于 index 2 的元素,并添加一个新元素来替代被删除的元素:

<script type="text/javascript">

var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"

document.write(arr + "<br />")
arr.splice(2,1,"William")
document.write(arr)

</script>

输出:

George,John,Thomas,James,Adrew,Martin
George,John,William,James,Adrew,Martin

例子 3

在本例中我们将删除从 index 2 ("Thomas") 开始的三个元素,并添加一个新元素 ("William") 来替代被删除的元素:

<script type="text/javascript">

var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"

document.write(arr + "<br />")
arr.splice(2,3,"William")
document.write(arr)

</script>

输出:

George,John,Thomas,James,Adrew,Martin
George,John,William,Martin


2025年下半年网络工程师案例分析真题及答案解析 阅读详情

相关推荐

开源滑翔伞升降速度表:基于STM32与传感器融合的DIY飞行仪表

传感器融合是现代嵌入式系统与物联网设备中的核心技术,它通过整合多个传感器的数据,利用滤波与估计算法,获得比单一传感器更精确、更可靠的环境感知能力。其技术价值在于提升系统的鲁棒性、精度和上下文理解能力,广泛应用于无人机导航、可穿戴设备、工业监测及智能驾驶等领域。本文聚焦于一个具体的工程实践案例——开源多功能滑翔伞升降速度表(Open-Vario),该项目巧妙地运用了**卡尔曼滤波器**进行气压与GNSS数据的融合,以精确计算升降率,并基于**FreeRTOS**实时操作系统构建了一个稳定、可扩展的嵌入式平台,

weixin_33657398的博客 176

JS里slice,substring,substr方法参数传入负值时如何变化

JS里 slice,subString,substr方法参数传入负值时如何变化新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出...

weixin_38382659的博客 4023

嵌入式STM32控制电梯面板

嵌入式STM32控制电梯面板 用点阵来显示电梯向上还是向下运动,用数码管来显示楼层数(由于灯阵显示楼层数比较困难故用数码管代替)。当按下对应的按钮,就可以去到对应层数,可上升可下降。 #include "stm32f10x.h" #include "stm32f10x_exti.h" #include "stm32f10x_it.h" #define uint unsigned int #define KEY1 GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_10) #define

code_init_的博客 2111

java字符串split方法的注意事项

使用索引访问用 String 的 split 方法得到的数组时,需做最后一个分隔符后有无内容 的检查,否则会有抛出IndexOutOfBoundsException 的风险。 例1: String str = "a,b,c,,"; String[] ary = str.split(","); // 预期大于 3,结果是 3 System....

qq_30597401的博客 456

从EXIF到测绘:解码大疆影像元数据的实战应用指南

本文深入解析了大疆无人机影像元数据的实战价值,重点阐述了如何利用EXIF和XMP中的GPS、RTK、姿态角及相机内参等关键信息,提升测绘、三维重建及精准农业等项目的成果精度与效率。通过自动化质检脚本与行业应用场景剖析,指导从业者将元数据从信息转化为生产力,实现从拍照到专业测绘的跨越。

dell8的博客 526

从‘哒哒’声到静音顺滑:一文搞懂42步进电机细分控制的原理与实战(以TMC5160为例)

本文详细解析了42步进电机细分控制技术,以TMC5160为例,探讨如何通过正弦波电流调制和自适应波形整形实现静音运行。文章提供了实战配置指南,包括硬件连接、寄存器配置和调试技巧,帮助用户有效消除电机噪声,提升3D打印机、CNC机床等设备的运行效率。

weixin_42657024的博客 313

String中的split方法(随手一记)

JAVA中String类中的split方法,用来将字符串分隔为字符串数组(String[]) split有两个重载方法 public String[] split(String regex) // 参数为正则表达式 public String[] split(String regex, int limit) // 第一个参数为正则表达式,第二个参数为分隔的块数 使用split分隔数组的过程: 根据正则表达式,从左往右进行匹配,遇到分隔符 ,将分隔符左边部分和右边部分分成两项,然后继续分割右

NAPO687的博客 2011

基于stm32开发的红外循迹小车

2.L298N电机驱动模块:分别是5V,12V,GND,可以通过外加电源给驱动模块供电,IN1,IN2,IN3,IN4,EN1,EN2,通过给IN口不同的电平,可以达到控制电机正反转,EN口为使能口,可以通过给EN口不同的PWM波,来达到控制小车速度,1.红外循迹模块:检测黑线的原理是向外发射红外线,当没有遇到黑线的时候,返回回来,之后返回高电平,当遇到黑线的时候,红外被吸收,返回高电平,读取相应IO口的电平就可以知道小车此时的大致位置;模块有四个输入接口,分别连接四个TT马达,驱动小车运动;

2301_81374681的博客 1万+

java split int_Java中关于String的split(String regex, int limit) 方法

今天在对一个String对象进行拆分的时候,总是无法到达预计的结果。呈现数据的时候出现异常,后来debug之后才发现,错误出在String spilt上,于是开始好好研究下这东西,开始对api里的split(String regex, int limit)比较感兴趣,可是就是不理解当limit为负数时的情况下面是api里的解释:limit 参数控制模式应用的次数,因此影响所得数组的长度。如果该限制...

weixin_42322467的博客 403

【PB03F 超详细-环境搭建】蓝牙5.2安信可PB-03F-Kit开发板二次开发环境搭建

PB-03是由深圳市安信可科技有限公司开发的蓝牙模块。本博文介绍安信可PB-03F-Kit开发板的基本情况、开发环境搭建,以及以点亮LED为例介绍程序编写和固件烧录的操作流程。 安信可PB-03F-Kit开发板使用的PHY6252这样一款高集成度的低功耗蓝牙系统级芯片(SoC),专为物联网(IoT)、移动设备、可穿戴电子设备、智能家居等各种应用而设计。......

qq_44078824的博客 1万+

【Envi遥感图像处理】022:envi时空分析工具的使用

本文介绍了ENVI软件中的时空分析工具应用,以美国拉斯维加斯1975-2014年的9期Landsat数据为例。主要内容包括:1)时空分析概念,即对空间相关时间序列数据的建模分析;2)构建时序数据流程,通过添加栅格、时间排序等步骤生成.series格式时序文件;3)时序数据查看方法,包括动画播放、添加注记及保存视频;4)多源数据统一处理工具,解决坐标系、空间范围不一致问题。该工具可用于冰川变化、植被覆盖等时空变化研究。

智慧空间实验室 270

String的split方法

public String[] split(String regex, int limit) split方法有两个参数,分别是字符串类型的regex(分隔符),int类型的limit(限制个数)。通过源码可以发现,limit可以分为正数、0、负数,参数控制应用阵列的次数,从而影响结果阵列的长度 如果限制n大于零,则最多应用模式n-1次,数组的长度将不大于*n,数组的最后一个条目将包含最后一个匹配分隔符以外的所有输入。 如果n是非正的,那么将尽可能多次应用该模式,并且该阵列可以具有任何长度。 如果n为零

weixin_46223196的博客 4395

卸载python弹框报错:Could not set file security for file ‘D:\Config.Msi\abd5.rbf‘. Error: 5. Verify...如何解决?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 6479

split,splice,slice,substr,substring区别总结

每次对字符串或者数组截取拼接的时候用的都要查文档,下面把这几个总结一下,熟悉起来,以后再也不用查文档了。 split,splice,slice,substr,substring使用方法易混淆,总结如下: 1、split() 字符串转数组;字符串使用,按照参数将字符串截取为一个新的数组。 如: var str = "as-dfg-hj"; var str_split = str.split("-")...

张木期的博客 2350

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

js中的 slice、splice、split、substring、substr

这两个都是截取字符串长度的 第一个参数均表示开始截取的位置 第二个参数含义不一样。splice第二个参数是负数,表示要删除的项为空 返回一个空数组。splice第一个参数是负数,表示从倒数位置开始计算删除的位置。substring表示要截取到位置的索引,不包含最后的位置。slice第一个参数是负数,表示从倒数位置开始计算截取位置。slice第二个参数是负数,表示不截取 返回是一个空数组。substr第一个参数是负数,表示从倒数位置开始计算截取。splice第三个参数是负数,表示要插入的元素就是负数。

我是一颗草,哪里荒凉往哪里长 550

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

js中slice,substr,substring,splice,split方法的区别

slice方法 slice(start, end)用于字符串和数组截取,start开始截取的位置索引,end截取结束的索引值(不包含),end参数等于你要取的最后一个字符的位置值加上1 slice返回的是一个新的数组,不改变原有数组 slice(start, end)中start必需有。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒...

菜鸟搬砖记 1005

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

subString, subStr, splice, slice, split

slice() Array和String对象都有 在Array中 slice(i,[j]) ----i为开始截取的索引值,负数代表从末尾算起的索引值,-1为倒数第一个元素 ----j为结束的索引值,缺省时则获取从i到末尾的所有元素 参数返回: ----返回索引值从i到j的数组,原数组不改变 在String中 slice(i,[j]) 参数说明: ----i为开始截取的索引值,负数代表从末尾算起的...

不能再菜 212

join、split、slice、splice、substring、substr、unshift方法的使用

join、split、slice、splice、substring、substr、unshift方法的使用 (1)join() 方法将数组作为字符串返回。 ​ 元素将由指定的分隔符分隔。默认分隔符是逗号 (,)。 ​ 注释: join() 方法不会改变原始数组。 语法 array.join(separator) 参数值 参数 描述 separator 可选。要使用的分隔符。如果省略,元素用逗号分隔。 技术细节 返回值: 字符串值,表示数组值,由指定

zzzz121380的博客 1127

slice,SubString和SubStr有什么区别?注意区分slice()、splice()、split()

slice,SubString和SubStr有什么区别?注意区分slice()、splice()、split() 一、slice(), substring(), substr();这三个方法都是返回被操作字符串的一个子字符串,就是返回一个新的字符串。 string.slice(start, end)提取一个字符串 string.substring(start, end)提取一个字符串,end不支持负数 string.substr(start, len)提取一个长度为len的字符串 1、 slice和subs

Joshua_tan的博客 596

splice、slice、split、substr、substring、match、replace的区别

1、splice() splice() 方法用于添加或删除数组中的元素。 2、slice() slice() 方法可截取数组/字符串中选定的元素。 3、split() split() 方法用于把一个字符串分割成字符串数组。 4、substr() substr() 方法可在字符串中抽取从 开始 下标开始的指定数目的字符。 5、substring() substring() 方法用于提取字符串中介于两个指定下标之间的字符。 6、match() match() 方法可在字符串内检索指定的值,或找到一个或多个正则表

无翼之雀的博客 743

split 、splice 、slice、substr、substring终极区分

一、split() 方法用于把一个字符串分割成字符串数组。stringObject.split(参数1,参数2) //参数1是从指定分隔符处分隔,参数2是返回切割成数组的长度例如:var str="How are you doing today?" console.log(str.split(" ",3)) //["How","are","you"]...

hyupeng1006的博客 718

Js基础 (slice splice split substr substring) 之间的区别

**Js基础 (slice splice split substr substring) 之间的区别** slice定义: slice(start,end)从start位置开始,截取到end位置,end取不到,可以接受负值,返回被截取项目的新数组(具体语法如下) var str = ‘xiaobai’; console.log(str.slice(0,-2)) (可以接受负值,倒数两位取不到,返回xiaob) splice定义:splice()数组删除spl...

huangxiaoruan的博客 197

slice(),splice(),split(),substring(),substr()的分析

slice(),splice(),split(),substring(),substr()的分析 slice() 数组和字符串都有 不改变原数组, // slice(start ,end) var str="wuhu aizai!" var arr=['one','two','three','four','five'] console.log(arr.slice(1));//[ 'two', 't...

qq_40345107的博客 235

JavaScript:slice substr substring splice split

【代码】JavaScript:slice substr substring splice split。

m0_74141224的博客 231

split,splice,slice,substr,substring使用方法总结

split,splice,slice,substr,substring使用方法总结

十盏 1048

String对象中易混淆知识点substr,slice,substring,split,splice总结

对象中易混淆知识点substr,slice,substring,split,splice总结 最近把在学习当中遇到的一些问题提出来和大家分享一下,希望对大家有一定的帮助。不多说,下面直接上干货,走你! 在String对象中会接触到字符串的一些操作方法,比如常见的字符串拼接,字符串的截取等等,代码如下: var str1 = ‘liu’; var str2 = ‘ding’; // concat(str1,str2,str3…) 拼接字符串 console.log(str1.concat(str2, ‘刘

Eric_freestyle的博客 492
上一篇: 正则表达式中/i,/g,/ig,/gi,/m的区别和含义
下一篇: 一个用jquery实现轮播的demo
PlugInLip
博客等级 码龄12年 0粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值