寻找子字符串替代javascript

Gra*_*son 9 javascript methods substring angularjs-ng-href

基本上我的问题是我在变量版本上使用 substring 方法来获取结果,然后使用 ng-href 在 URL 中使用:

substring(0, 3)
version 9.1.0 = 9.1 (good)
version 9.2.0 = 9.2 (good)
version 9.3.0 = 9.3 (good)
..
version 9.10.0 = 9.1 (breaks here)
version 10.1.0 = 10. (breaks here)
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,最终子字符串方法停止工作,我该如何解决这个问题?

小智 17

相当于substring() 检查 MDN文档


Ank*_*wal 0

您可以通过删除最后两个字符(即点和数字字符)来以另一种方式获取子字符串:

function version(val){
  console.log(val.substring(0,val.length-2))
} 
version('9.1.0');
version('9.2.0');
version('9.3.0');
version('9.10.0');
version('10.1.0');
Run Code Online (Sandbox Code Playgroud)

但是如果末尾有两个数字字符和一个点怎么办?这是该解决方案:

function version(val){
  var tempVersion = val.split('.');
  tempVersion.pop();
  console.log(tempVersion.join('.'))
} 
version('9.1.0');
version('9.2.0');
version('9.3.1020');
version('9.10.0');
version('10.1.0123');
Run Code Online (Sandbox Code Playgroud)