在javascript中切片字符串

时间:2018-10-24 00:33:10

标签: javascript

我有一个查询字符串:

window.location.search
?myvar=kx

我将如何删除“?”一开始?例如,在python中,我会执行以下任一操作:

str = str.lstrip('?')

str = str[1:]

我该如何使用javascript进行操作?

3 个答案:

答案 0 :(得分:1)

如果要在切片后向左或向右移动,可以使用split:

var loc = "http://test.com?myVar=kx&myCar=BMW";
var res = loc.split("?");
var url = res[0]
var params = res[1]

如果要获取不带queryString的URL,可以尝试以下操作:

var loc = window.location; // or new URL("http://test.com?myVar=kx&myCar=BMW");
var url = loc.origin;

如果要获取URL中参数的值,则可以使用URLSearchParams,它非常简单易行。

let params = new URLSearchParams(window.location.search);
let myVar = params.get('myvar');

您也可以像这样使用它:

let params = new URL('http://test.com?myVar=kx&myCar=BMW').searchParams;
params.get('myVar'); // "kx"
params.get('myCar'); // "BMW"

如果这不是您想要的,则可以尝试使用正则表达式或其他字符串操作来帮助您找到所需的内容。您可以在w3schools

进行检查

答案 1 :(得分:0)

对于子字符串,您可以执行以下操作:

str.substring(1)

对于lstrip,您可以使用正则表达式。

答案 2 :(得分:0)

如果您希望在开始查询后获得所有信息,我将执行以下功能。

// function you can use:
function getQueryString(str) {
  return str.split('?')[1];
}
// use the function:
console.log(getQueryString("?myvar=kx")); // which returns 'myvar=kx'