xiaokeqi / i-learned

1 stars 0 forks source link

URLSearchParams #4

Open xiaokeqi opened 5 years ago

xiaokeqi commented 5 years ago

此个issue来源于每日一题里面的https://github.com/Advanced-Frontend/Daily-Interview-Question/issues/177

https://www.xx.cn/api?keyword=&level1=&local_batch_id=&elective=&local_province_id=33
https://www.xx.cn/api?keyword=&level1=&local_batch_id=&elective=800&local_province_id=33
https://www.xx.cn/api?keyword=&level1=&local_batch_id=&elective=800,700&local_province_id=33

匹配elective后的数字输出(写出你认为的最优解法): [] || ['800'] || ['800','700']

xiaokeqi commented 5 years ago

刚看到这一题时,最先想到的解法是通过正则表达式去匹配。通过正则表达式和match,子组这样子的。实现 但后来看到大神们用URLSearchParams实现的解决方案后,发现,简直是神器啊!!! 唯独一点不好的是,其兼容性不容乐观,ie系列全不支持,需要polyfill。。 上题实现方法如下: new URLSearchParams(https://www.xx.cn/api?keyword=&level1=&local_batch_id=&elective=800,700&local_province_id=33 ).get('elective')

xiaokeqi commented 5 years ago

其包含的方法如下,详细可参加mdn

append()
delete()
has()
entries()
get()
set()
getAll()
keys()
sort()
toString()
values()