1. namespace Home {
    2. class Header {
    3. constructor() {
    4. const elem = document.createElement('div');
    5. elem.innerText = "this is header";
    6. document.body.appendChild(elem);
    7. }
    8. }
    9. class Content {
    10. constructor() {
    11. const elem = document.createElement('div');
    12. elem.innerText = "this is content";
    13. document.body.appendChild(elem);
    14. }
    15. }
    16. class Footer {
    17. constructor() {
    18. const elem = document.createElement('div');
    19. elem.innerText = "this is footer";
    20. document.body.appendChild(elem);
    21. }
    22. }
    23. export class Page {
    24. constructor() {
    25. new Header();
    26. new Content();
    27. new Footer();
    28. }
    29. }
    30. }
    31. new Home.Page();
    32. // ts编译后会有4个全局变量 Header、Content、Footer、Page
    33. // 加上命名空间后,只有一个 Home 全局变量