提交学习笔记专用
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

23 lines
1.0 KiB

  1. // 基于类的面向对象编程示例
  2. // 定义一个User类,用于表示用户信息
  3. var User = /** @class */ (function () {
  4. // 类的构造函数,用于初始化实例
  5. // 参数:firstName(名)、lastName(姓)
  6. function User(firstName, lastName) {
  7. this.firstName = firstName; // 初始化名
  8. this.lastName = lastName; // 初始化姓
  9. this.fullName = firstName + ' ' + lastName; // 拼接全名
  10. }
  11. return User;
  12. }());
  13. // 定义greeter函数,用于向符合Person接口结构的对象打招呼
  14. // 参数:person(符合Person接口的对象)
  15. function greeter2(person) {
  16. // 返回拼接好的问候语
  17. return 'Hello, ' + person.firstName + ' ' + person.lastName;
  18. }
  19. // 创建User类的实例,传入名"Yee"和姓"Huang"
  20. var user2 = new User('Yee', 'Huang');
  21. // 调用greeter函数并打印结果
  22. // 虽然传入的是User实例,但User类包含firstName和lastName属性,符合Person接口要求,因此可以正常使用
  23. console.log(greeter2(user2)); // 输出:Hello, Yee Huang