urlUtils.ts 676 B

12345678910111213141516171819202122232425
  1. /**
  2. * 将对象添加当作参数拼接到URL上面
  3. * @param baseUrl 需要拼接的url
  4. * @param obj 参数对象
  5. * @returns {string} 拼接后的对象
  6. * 例子:
  7. * let obj = {a: '3', b: '4'}
  8. * setObjToUrlParams('www.baidu.com', obj)
  9. * ==>www.baidu.com?a=3&b=4
  10. */
  11. export function setObjToUrlParams(baseUrl: string, obj: object): string {
  12. let parameters = '';
  13. let url = '';
  14. for (const key in obj) {
  15. parameters += key + '=' + encodeURIComponent(obj[key]) + '&';
  16. }
  17. parameters = parameters.replace(/&$/, '');
  18. if (/\?$/.test(baseUrl)) {
  19. url = baseUrl + parameters;
  20. } else {
  21. url = baseUrl.replace(/\/?$/, '?') + parameters;
  22. }
  23. return url;
  24. }