object.ts 800 B

12345678910111213141516171819202122232425262728293031323334
  1. /** @format */
  2. export function objectCopy<T>(oldObj: T): T {
  3. return JSON.parse(JSON.stringify(oldObj))
  4. }
  5. /**
  6. * 判断一个对象是否为空对象
  7. * @param {obejct} obj 目标对象
  8. */
  9. export const isEmptyObj = (obj: object) => JSON.stringify(obj) === '{}'
  10. export function getParentsById(list: any, key: string): any {
  11. for (const i in list) {
  12. if (list[i].key === key)
  13. return [list[i]]
  14. if (list[i].children) {
  15. const node = getParentsById(list[i].children, key)
  16. if (node !== undefined)
  17. return node.concat(list[i])
  18. }
  19. }
  20. return []
  21. }
  22. /**
  23. * /**
  24. * 判断一个对象是否为空对象
  25. */
  26. export function updateURLParameter(key, value) {
  27. const url = new URL(window.location.href)
  28. url.searchParams.set(key, value)
  29. history.pushState({}, '', url)
  30. }