首先它们都接收两个参数,slice和substring接收的是起始位置与结束位置,而substr接收的是起始位置和所要截取的字符长度。
特殊注意:
- 当第二参数大于第一个参数时,slice会返回空字符串;substring会自动将较小的参数作为起始位置,较大的参数作为结束位置;
- 当参数为负数时,slice与substr都会将参数与字符串的长度相加作为参数值;当substr的第二个参数为负数时也会当成0,从而返回空符串;substring则将负数直接为作0