JavaScript创建对象的几种方式

谁借莪1个温暖的怀抱¢ 2022-08-01 14:48 442阅读 0赞
  1. /**
  2. *创建对象方式一,直接通过大括号创建
  3. */
  4. var Student1 = {};
  5. Student1.name ="张三";
  6. Student1.age =18;
  7. Student1.setName =function (name){
  8. this.name = name;
  9. };
  10. Student1.getName =function(){
  11. return this.name;
  12. }
  13. console.log(Student1);
  14. //结果:{ name: '张三', age: 18, setName: [Function], getName: [Function] }
  15. Student1.setName("zhangsan");
  16. console.log(Student1.getName());
  17. //结果:zhangsan
  18. /**
  19. *创建对象方式二:大括号创建并设置属性
  20. */
  21. var Student2 = {
  22. name : "张三",
  23. age : 18,
  24. setName : function(name){
  25. this.name = name;
  26. },
  27. getName : function(){
  28. return this.name;
  29. }
  30. };
  31. console.log(Student2);
  32. //结果:{ name: '张三', age: 18, setName: [Function], getName: [Function] }
  33. Student2.setName("zhangsan");
  34. console.log(Student2.getName());
  35. //结果:zhangsan
  36. /**
  37. *创建对象方式三:构造方法
  38. */
  39. function Student3(name,age){
  40. this.name = name;
  41. this.age = age;
  42. this.setName = function(name){
  43. this.name = name;
  44. };
  45. this.getName = function(){
  46. return this.name;
  47. }
  48. }
  49. var stu = new Student3("张三",18);
  50. console.log(stu);
  51. //结果:{ name: '张三', age: 18, setName: [Function], getName: [Function] }
  52. stu.setName("zhangsan");
  53. console.log(stu.getName());
  54. //结果:zhangsan
  55. /**
  56. *创建对象方式三:构造方法 + 属性
  57. */
  58. function Student4(name,age){
  59. this.name = name;
  60. this.age = age;
  61. }
  62. Student4.prototype.setName =function(name){
  63. this.name = name;
  64. }
  65. Student4.prototype.getName=function(){
  66. return this.name;
  67. }
  68. var stu = new Student4("张三",18);
  69. console.log(stu);
  70. //结果:{ name: '张三', age: 18 }
  71. stu.setName("zhangsan");
  72. console.log(stu.getName());
  73. //结果:zhangsan

发表评论

表情:
评论列表 (有 0 条评论,442人围观)

还没有评论,来说两句吧...

相关阅读