在javascript中拆分第一个等号上的字符串
我正在尝试使用Javascript从url中分割出一些数据,该url看起来像在javascript中拆分第一个等号上的字符串,javascript,Javascript,我正在尝试使用Javascript从url中分割出一些数据,该url看起来像 var1=green&var2=yellow&newUrl=[url.php?id=2] 我正设法用“&”符号分割url,以得到一个包含三个项目的数组。然后,我尝试用第一个“=”符号拆分这个数组,以得到字段和变量的列表。它工作正常,直到在newUrl字段中找到第二个=符号。关于如何在第一个“=”符号处拆分此字符串的任何想法 到目前为止我的代码是 var href = $(this).attr("hre
var1=green&var2=yellow&newUrl=[url.php?id=2]
我正设法用“&”符号分割url,以得到一个包含三个项目的数组。然后,我尝试用第一个“=”符号拆分这个数组,以得到字段和变量的列表。它工作正常,直到在newUrl字段中找到第二个=符号。关于如何在第一个“=”符号处拆分此字符串的任何想法
到目前为止我的代码是
var href = $(this).attr("href");
var vars = href.split("&");
for(i=0; i < vars.length; ++i){
var str = vars[i].split("=");
alert(str[0] +':' +str[1]);
}
}
有什么想法吗
**编辑以显示基于魔杖制造商解决方案的最终代码**
var vars = href.split("&");
for(i=0; i < vars.length; ++i){
index = vars[i].indexOf("=")
var str = [ vars[i].substring(0, index), vars[i].substring(index)]
alert(str[0] +':' +str[1].substring(1);
}
var vars=href.split(&”);
对于(i=0;i
尝试下面的方法来拆分=
index = vars[i].indexOf("=")
var str = [ vars[i].substring(0, index), vars[i].substring(index)]
可以对数组中的第三个元素使用join(),如下所示:
var lst = href.split("&");
var var1 = href[0].split("=")[1];
var var2 = href[1].split("=")[1];
var var3 = href[2].split("=").slice(1,2).join("");
函数splitFirstInstance(str,item){
var-res=[];
var发现=真;
res.push(“”);
对于(变量i=0;i
str[1:][/code>是python切片吗?Javascript切片是str.slice(start,end)
Yh刚刚注意到并更正了它。我相信你指的是str.substr(start,end)或array.slice(start,end)很酷,稍微调整一下,从对我有用的第二个字符串的开头删除=符号。谢谢。
var lst = href.split("&");
var var1 = href[0].split("=")[1];
var var2 = href[1].split("=")[1];
var var3 = href[2].split("=").slice(1,2).join("");
function splitFirstInstance(str,item){
var res = [];
var found = true;
res.push("");
for (var i = 0; i < str.length;i++){
if (str[i] === item && found === true){
res.push("");
found = false;
} else {
res[res.length-1] += str[i];
}
}
return res;
}
splitstr("I Want to Split First a","a"); // ["I W","nt to Split First a"]