JS截取字符串substr 和 substring方法的区别【七日打卡】

1,422 阅读2分钟

substr方法 返回一个从指定位置开始的指定长度的子字符串。

stringvar.substr(start [, length ])

参数 stringvar

必选项。要提取子字符串的字符串文字或 String 对象。

start

必选项。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。

length

可选项。在返回的子字符串中应包括的字符个数。

说明 如果 length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串将延续到 stringvar 的最后。

示例 下面的示例演示了substr 方法的用法。

function SubstrDemo(){
   var s, ss;                // 声明变量。
   var s = "The rain in Spain falls mainly in the plain.";
   ss = s.substr(12, 5);     // 获取子字符串。
   return(ss);               // 返回 "Spain"。
}

substring 方法 返回位于 String 对象中指定位置的子字符串。

strVariable.substring(startend)

"String Literal".substring(startend)

参数 start

指明子字符串的起始位置,该索引从 0 开始起算。

end

指明子字符串的结束位置,该索引从 0 开始起算。

说明 substring 方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。

substring 方法使用 start 和 end 两者中的较小值作为子字符串的起始点。例如, strvar.substring(0, 3) 和 strvar.substring(3, 0) 将返回相同的子字符串。

如果 start 或 end 为 NaN 或者负数,那么将其替换为0。

子字符串的长度等于 start 和 end 之差的绝对值。例如,在 strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串的的长度是 3。

示例 下面的示例演示了 substring 方法的用法。


function SubstringDemo(){
   var ss;                         // 声明变量。
   var s = "The rain in Spain falls mainly in the plain..";
   ss = s.substring(12, 17);       // 取子字符串。
   return(ss);                     // 返回子字符串。
}

拓展阅读: js中取小数整数部分函数

js中取小数整数部分函数 丢弃小数部分,保留整数部分  js:parseInt(7/2)

向上取整,有小数就整数部分加1 js: Math.ceil(7/2)

四舍五入 js: Math.round(7/2)

向下取整 js: Math.floor(7/2)

附:如何判断输入的数值类型(使用时不带引号!) 其实就是利用正则表达式。 "^\d+$" // 非负整数(正整数+0)     

"^[0-9][1-9][0-9]$"// 正整数     

"^((-\d+)|(0+))$" // 非正整数(负整数+ 0)     

"^-[0-9][1-9][0-9]$"// 负整数     

"^-?\d+$"   // 整数     

"^\d+(\.\d+)?$"  // 非负浮点数(正浮点数+0)     

"^(([0-9]+\.[0-9][1-9][0-9])|([0-9][1-9][0-9]\.[0-9]+)|([0-9][1-9][0-9]))$" //正浮点数     

"^((-\d+(\.\d+)?)|(0+(\.0+)?))$"//非正浮点数(负浮点数+0)     

"^(-(([0-9]+\.[0-9][1-9][0-9])|([0-9][1-9][0-9]\.[0-9]+)|([0-9][1-9][0-9])))$"//负浮点数     

"^(-?\d+)(\.\d+)?$"//浮点数

举例

var r = /^[0-9]*[1-9][0-9]*$///正整数    

r.test(str);   //str为你要判断的字符 执行返回结果true或false