从javascript regex.exec分配多个变量

Assigning multiple variables from javascript regex.exec

本文关键字:变量 分配 exec javascript regex      更新时间:2023-09-26

我正在为一些在Firefox中有效但在其他浏览器中无效的代码寻找解决方案,目前函数如下:

function capitalise(myString) {
  // Extract 1st char (b) and rest of string (c) then return it with b capitalised
  var [a, b, c] = /^(.)(.*)$/.exec(myString);
  return b.toUpperCase()+c;
}

哪个在Firefox中运行得很好,但Chrome和Opera不允许。有人能建议一个不错的解决方案吗?

我使用相同的var[thing1,thing2,thing3]=regex.exec(str);我现在正在写的脚本中的各种内容的语法。

我想这在其他浏览器中也能工作:

function capitalise(myString) {
  // Extract 1st char (b) and rest of string (c) 
  // then return it with b capitalised
  var abc = /^(.)(.*)$/.exec(myString);
  return abc[1].toUpperCase()+abc[2];
}

或者:

function capitalise(myString) {
  return myString.match(/^(.)(.+)$/)
          .slice(1)
          .reduce(function(a,b){return a.toUpperCase()+b;}
         );
}