cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Cari corak biasa JS (ambil parameter URL)

?id=001&from=1我用reactthis.props.location.searchSaya telah mengeluarkan bahagian utama, saya tidak faham peraturan biasa, sila beri saya nasihat

天蓬老师天蓬老师2811 hari yang lalu504

membalas semua(8)saya akan balas

  • 某草草

    某草草2017-05-18 10:49:04

    var str = "?id=001&from=1";
    JSON.parse("{" + 
                     str.replace("?", "\"")
                        .replace(new RegExp(/(&)/g),'\",\"')
                        .replace(new RegExp(/(=)/g),'\":\"')
                   + "\"}")

    balas
    0
  • 某草草

    某草草2017-05-18 10:49:04

    var reg = /([^?=&]+)=([^?=&]*)/g,
        str = window.location.href,
        tempObj = {};
       
    str.replace(reg,function(str,key,val){
        var k = decodeURIComponent(key),
            v = decodeURIComponent(val);
        tempObj[k] = v || "";
        return str;
    });

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-18 10:49:04

    Tidakkah sepatutnya ada pertanyaan di lokasi? Adakah saya keliru? . .

    Anda boleh mempertimbangkan perkara berikut:

    JSON.parse(
        '{' + 
            locatio.search
                .replace('?', '')
                .replace(/&/g, ',')
                .replace(/(\w+)=?(\w+|)/ig, '"":""') + '}')

    Ia mungkin muncul: "?a=1&b=2&c=", atau pun "?a=1&b=2&c"

    balas
    0
  • phpcn_u1582

    phpcn_u15822017-05-18 10:49:04

    "?id=001&from=1".replace('?', '').replace('&', ',').replace(/(w+)=(w+)/g , '$1:$2')

    balas
    0
  • 阿神

    阿神2017-05-18 10:49:04

    var parms = location.search.replace("?","").split("&");
    var json = {};
    for(let i = 0, n = parms.length; i<n; i++ ){
        let t = parms[i].split("=");
        json[ t[0] ] = t[1];
    }
    

    Kaedah JSON.parse di atas sangat mudah, tetapi anda perlu mempertimbangkan isu keserasian ie8 Jenis yang saya tulis tidak perlu mempertimbangkan keserasian, tetapi ia lebih menyusahkan

    balas
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-18 10:49:04

    fungsi GetRequest() {

            var url = location.search; //获取url中"?"符后的字串
            var theRequest = new Object();
            if (url.indexOf("?") != -1) {
                var str = url.substr(1);
                strs = str.split("&");
                for(var i = 0; i < strs.length; i ++) {
                    theRequest[strs[i].split("=")[0]]=(strs[i].split("=")[1]);
                }
            }
            return theRequest;
        }

    balas
    0
  • 迷茫

    迷茫2017-05-18 10:49:04

    (http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:/~\+#]*[\w\-\@?^=%&amp;/~\+#])?

    balas
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-18 10:49:04

    function get_param(name){
        var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"),
        r = window.location.search.substr(1).match(reg);
        if(r!=null)return  decodeURI(r[2]); return null;
    }

    balas
    0
  • Batalbalas