编辑代码

// console.log('script start')
// let promise1 = new Promise(function(resolve) {
//     console.log('promise1')
//     resolve()
//     console.log('promise1 end')
// }).then(function() {
//     console.log('promise2')
// })

// setTimeout(function() {
//     console.log('setimeout')
// })

// console.log('script end')

// let obj = {a:1, b:2, c:3};
// let arr = [1, 2, 3, 4];
// for (let o in obj) {
//     // for - in 遍历对象的key
//     console.log('of is ', o);
// }

// for (let o of arr) {
//     console.log(' arr is ', o)
// }

// let obj = {a: '1', b: '2'}
// let arr = ['a', 'b', 'c']
// for(o in arr) {
//     console.log(o)
// }

// for(o of arr) {
//     console.log(o)
// }

// for (var i = 0; i < 10; i++) { Promise.resolve(i).then(res => { console.log(res) }) }

// const reg = new RegExp(/^((-?[1-9][0-9]*)|(([0]\.\d{1,2}|-?[1-9][0-9]*\.\d{1,2})))$/);
// console.log(reg.test('-123123.12'))

const url = "cache_purchasing_42dd1cffa7c746c2bf19f9cb3648d333_?pid=7b347efa873e45628a4368f3f44022c6&forecastNo=CGY202209050003&title=%E9%87%87%E8%B4%AD%E9%A2%84%E6%B5%8B";


function getQueryString(source, name) {
    let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    let r = source.substr(1).match(reg);
    if (r != null) {
        return decodeURIComponent(r[2]);
    };
    return null;
}

console.log(getQueryString(url, 'pid'))