亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

String.slice和String.substring有什么區別?

String.slice和String.substring有什么區別?

catspeake 2019-08-28 16:40:40
String.slice和String.substring有什么區別?有誰知道這兩種方法之間的區別是什么:String.protorype.sliceString.protorype.substring
查看完整描述

3 回答

?
猛跑小豬

TA貢獻1858條經驗 獲得超8個贊

slice()substring()一些不同的行為一樣工作。

Syntax: string.slice(start, stop);Syntax: string.substring(start, stop);

他們有什么共同點:

  1. 如果startequals stop:返回一個空字符串

  2. 如果stop省略:將字符提取到字符串的末尾

  3. 如果任一參數大于字符串的長度,則將使用字符串的長度。

區別 substring()

  1. 如果start > stop,那么substring將交換這兩個參數。

  2. 如果任一參數為負數或者是NaN,則將其視為是0

區別 slice()

  1. 如果start > stop,slice()將返回空字符串。(""

  2. 如果start是否定的:從字符串的末尾設置char,就像substr()在Firefox中一樣。在Firefox和IE中都觀察到此行為。

  3. 如果stop是否定的:將stop設置為:( string.length – Math.abs(stop)原始值),除非限制在0(因此,Math.max(0, string.length + stop)),如ECMA規范中所述。

來源:編程與開發的基礎藝術:Javascript:substr()vs substring()


查看完整回答
反對 回復 2019-08-28
?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

注意:如果你趕時間,和/或尋找簡短的答案滾動到答案的底部,并閱讀最后兩行。如果不是匆忙閱讀整個事情。


首先讓我陳述一下事實:

語法:
string.slice(start,end)
string.substr(start,length)
string.substring(start,end)
注意#1:slice()==substring()

它能做什么?
slice()方法提取字符串的一部分,并以新字符串形式返回提取的部分。
substr()方法從指定位置的字符開始提取字符串的一部分,并返回指定數量的字符。
substring()方法提取字符串的一部分,并以新字符串形式返回提取的部分。
筆記2:slice()==substring()

更改原始字符串?
slice()
substr()
substring()
注3:slice()==substring()

使用負數作為參數:
slice()選擇從字符串末尾開始的字符
substr()選擇從字符串末尾開始的字符
substring()不執行
注意#3:slice()==substr()

如果第一個參數大于第二個:
slice()不執行,
substr()因為第二個參數不是一個位置,而是長度值,它會像往常一樣執行,沒有任何問題
substring()會交換這兩個參數,并像往常一樣執行

第一個參數:
slice()必需,表示:起始索引
substr()必需,表示:起始索引
substring()必需,表示:起始索引
注4:slice()==substr()==substring()

第二個參數:
slice()可選,位置(最多但不包括)結束提取的位置可選,
substr()要提取的字符數
substring()可選,位置(最多但不包括)結束提取的位置
注意#5:slice()==substring()

如果第二個論點被省略怎么辦?
slice()選擇從字符串的起始位置到結尾的
substr()所有字符選擇從字符串的起始位置到結尾的
substring()所有字符選擇從字符串的起始位置到結尾的所有字符
注意#6:slice()==substr()==substring()

所以,你可以說slice()和之間存在差異substr(),而substring()基本上是副本slice()。

在摘要中:
如果您知道要停止的索引(位置)(但不包括),請slice()
在知道要提取的字符長度時使用substr()。


查看完整回答
反對 回復 2019-08-28
  • 3 回答
  • 0 關注
  • 854 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號