其他分享
首页 > 其他分享> > 查漏补缺——说说split方法

查漏补缺——说说split方法

作者:互联网

问题

如题所示

答案

相关源码:

export function param2Obj(url) {
  const search = url.split('?')[1]
  if (!search) {
    return {}
  }
  return JSON.parse(
    '{"' +
      decodeURIComponent(search)
        .replace(/"/g, '\\"')
        .replace(/&/g, '","')
        .replace(/=/g, '":"')
        .replace(/\+/g, ' ') +
      '"}'
  )
}

这里有一行这样的代码:

const search = url.split('?')[1]

javascript中的split()和join()方法

根据上面,我们知道这行代码在字符串中匹配到?这个符号,然后从分割出来的元素中选取第二个元素(因为数组下标是从0开始的),我们通过一个实验验证我们这个结论是不是对的:

var str1 = 'wwww.huangzihan.top?黄子涵';
console.log("对str1进行split操作:");
console.log(str1.split('?')[1]); 
console.log("");
var str2 = 'wwww.huangzihan.top?hzh?黄子涵';
console.log("对str2进行split操作:");
console.log(str2.split('?')[1]); 
console.log("");
var str3 = 'wwww.huangzihan.top?1921323493?黄子涵?hzh';
console.log("对str3进行split操作:");
console.log(str3.split('?')[1]); 
console.log("");
var str4 = '黄子涵?hzh?1921323493';
console.log("对str4进行split操作:");
console.log(str4.split('?')[1]); 
console.log("");
var str5 = 'hzh?黄子涵?1921323493';
console.log("对str5进行split操作:");
console.log(str5.split('?')[1]); 
console.log("");
[Running] node "e:\HMV\JavaScript\JavaScript.js"
对str1进行split操作:
黄子涵

对str2进行split操作:
hzh

对str3进行split操作:
1921323493

对str4进行split操作:
hzh

对str5进行split操作:
黄子涵


[Done] exited with code=0 in 0.229 seconds

实验证明,我们的想法是正确的。

标签:黄子涵,console,log,查漏,hzh,split,补缺,var
来源: https://www.cnblogs.com/Huang-zihan/p/16437651.html