function genComplexID(length = 10, prefix = "id-") {
  const chars =
    "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
  return new Array(length).fill(0).reduce((prev) => {
    const char = chars.charAt(Math.floor(Math.random() * chars.length));
    return `${prev}${char}`;
  }, prefix);
}

兼容IE不支持Array.fill, 可以自己实现。

扩展阅读