Javascript 字符串jQuery剩余的空格数量

Javascript 字符串jQuery剩余的空格数量,javascript,jquery,Javascript,Jquery,我需要用jQuery计算字符串左边的空格 例如: String: " Hello how are you? " will have 4 white spaces at its left! 用jQuery我怎么能得到它 谢谢。这是使用普通的旧javascript可以实现的 function countLeftBlanks(arg) { var i = 0; while (i < arg.length && arg[i] === ' ') { i++

我需要用jQuery计算字符串左边的空格

例如:

 String: "    Hello how are you? "  will have 4 white spaces at its left!
用jQuery我怎么能得到它


谢谢。

这是使用普通的旧javascript可以实现的

function countLeftBlanks(arg) {
  var i = 0;
  while (i < arg.length && arg[i] === ' ') {
    i++;
  }
  return i;
}
函数countLeftBlanks(arg){
var i=0;
而(i
这是使用普通的旧javascript可以实现的

function countLeftBlanks(arg) {
  var i = 0;
  while (i < arg.length && arg[i] === ' ') {
    i++;
  }
  return i;
}
函数countLeftBlanks(arg){
var i=0;
而(i
在纯旧JavaScript中使用regexp:

var spacesOnLeft = myStr.match(/^ */)[0].length

不涉及循环。:)

在纯旧JavaScript中使用regexp:

var spacesOnLeft = myStr.match(/^ */)[0].length

不涉及循环。:)

如果我们使用RegExp,下面的解决方案可能是更好的跨环境解决方案:

var spacesOnLeft = ( myStr.match(/^ */) || [[]] )[0].length;
match
的结果为
null
时,上述操作可防止在某些环境中抛出TypeError。在官方文件中,匹配方法规定:

如果n=0,则返回null


尽管如此,大多数现代浏览器似乎返回一个包含空字符串的数组。但是,在某些环境中,ECMAScript定义是有效的,如果试图访问
匹配的[0]
,则会抛出TypeError。NodeJS环境就是一个很好的例子。

如果我们使用的是RegExp,下面可能是一个更好的跨环境解决方案:

var spacesOnLeft = ( myStr.match(/^ */) || [[]] )[0].length;
match
的结果为
null
时,上述操作可防止在某些环境中抛出TypeError。在官方文件中,匹配方法规定:

如果n=0,则返回null


尽管如此,大多数现代浏览器似乎返回一个包含空字符串的数组。但是,在某些环境中,ECMAScript定义是有效的,如果试图访问
匹配的[0]
,则会抛出TypeError。NodeJS环境就是一个很好的例子。

我对你的答案投了赞成票,因为它有效,但我使用了另一种方法,所以对我来说,答案是另一种。希望你的回答能帮助别人!我对你的答案投了更高的票,因为它有效,但我使用了另一种方法,所以对我来说,答案是另一种。希望你的回答能帮助别人!