在javascript中拆分第一个等号上的字符串

在javascript中拆分第一个等号上的字符串,javascript,Javascript,我正在尝试使用Javascript从url中分割出一些数据,该url看起来像 var1=green&var2=yellow&newUrl=[url.php?id=2] 我正设法用“&”符号分割url,以得到一个包含三个项目的数组。然后,我尝试用第一个“=”符号拆分这个数组,以得到字段和变量的列表。它工作正常,直到在newUrl字段中找到第二个=符号。关于如何在第一个“=”符号处拆分此字符串的任何想法 到目前为止我的代码是 var href = $(this).attr("hre

我正在尝试使用Javascript从url中分割出一些数据,该url看起来像

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"]