ArkTS中substr或substring来截取字符串不起作用的问题

记录一下在项目中遇到的问题,对从接口返回的string类型的数据直接使用substring,返回结果是原字符串。

// result为接口返回数据,dataUrl是string类型
let dataBean = JSON.parse(result) as DataBean
let url: string = dataBean.dataUrl
url = url.substring(0,3)

想取dataUrl字符串前三位给url,但是代码正常编译运行后,url的结果是dataUrl字符串。

猜测可能是将dataUrl赋值给url时没有进行正确的类型转换,substring没有生效,尝试在dataUrl后加上toString()和as string。

let url: string = dataBean.dataUrl.toString() as string

返回了正确的结果。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我来为您解答这个问题。 在 HTML5 截取字符串的方法与 JavaScript 截取字符串方法是一致的。常用的截取字符串的方法有 substringsubstr 和 slice。 1. substring 方法 substring 方法可以从字符串提取指定位置的子字符串。语法如下: str.substring(start, end) 其,start 和 end 分别是起始位置和结束位置的索引值(包括起始位置,不包括结束位置),如果省略 end 参数,则默认截取到字符串末尾。 例如: var str = "Hello world!"; var result = str.substring(0, 5); // 截取 "Hello" var result2 = str.substring(6); // 截取 "world!" 2. substr 方法 substr 方法可以从字符串提取指定长度的子字符串。语法如下: str.substr(start, length) 其,start 是起始位置的索引值,length 是要截取的长度。如果省略 length 参数,则默认截取到字符串末尾。 例如: var str = "Hello world!"; var result = str.substr(0, 5); // 截取 "Hello" var result2 = str.substr(6); // 截取 "world!" 3. slice 方法 slice 方法可以从字符串提取指定位置的子字符串。语法如下: str.slice(start, end) 其,start 和 end 分别是起始位置和结束位置的索引值(包括起始位置,不包括结束位置),如果省略 end 参数,则默认截取到字符串末尾。 例如: var str = "Hello world!"; var result = str.slice(0, 5); // 截取 "Hello" var result2 = str.slice(6); // 截取 "world!" 这三种方法都可以截取字符串,但是它们有些细微的差别。substring 和 slice 方法的参数都是以索引值表示位置,而 substr 方法的第二个参数是以长度表示位置。另外,substring 方法不支持负数参数,slice 方法支持负数参数。您可以根据具体的需求选择使用哪种方法。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值