zoukankan      html  css  js  c++  java
  • JavaScript 常见创建对象的方式

    JavaScript 有哪几种创建对象的方式?

    javascript创建对象简单的说,无非就是使用内置对象或各种自定义对象,当然还可以用JSON;但写法有很多种,也能混合使用。


    (1)对象字面量的方式

    person={firstname:"Mark",lastname:"Yun",age:25,eyecolor:"black"};

    (2)用function来模拟无参的构造函数function Person(){}


    var person = new Person(); //定义一个function,如果使用new"实例化",该function可以看作是一个Class
    person.name = "Xiaosong";
    person.age = "23";
    person.work = function() {
    alert("Hello " + person.name);
    }
    person.work();

    (3)用function来模拟参构造函数来实现(用this关键字定义构造的上下文属性)

    function Person(name,age,hobby) {
    this.name = name; //this作用域:当前对象
    this.age = age;
    this.work = work;
    this.info = function() {
    alert("我叫" + this.name + ",今年" + this.age + "岁,是个" + this.work);
    }
    }
    var Xiaosong = new Person("WooKong",23,"程序猿"); //实例化、创建对象
    Xiaosong.info(); //调用info()方法

    (4)用工厂方式来创建(内置对象)

    function Person(name,age,hobby) {
    this.name = name; //this作用域:当前对象
    this.age = age;
    this.work = work;
    this.info = function() {
    alert("我叫" + this.name + ",今年" + this.age + "岁,是个" + this.work);
    }
    }
    var Xiaosong = new Person("WooKong",23,"程序猿"); //实例化、创建对象
    Xiaosong.info(); //调用info()方法

    (5)用原型方式来创建

    function Standard(){}
    Standard.prototype.name = "ECMAScript";
    Standard.prototype.event = function() {
    alert(this.name+"是脚本语言标准规范");
    }
    var jiaoben = new Standard();
    jiaoben.event();

    (6)用混合方式来创建

    function iPhone(name,event) {
    this.name = name;
    this.event = event;
    }
    iPhone.prototype.sell = function() {
    alert("我是"+this.name+",我是iPhone5s的"+this.event+"~ haha!");
    }
    var SE = new iPhone("iPhone SE","官方翻新机");
    SE.sell();

    -------------------------------------------

    个性签名:独学而无友,则孤陋而寡闻。做一个灵魂有趣的人!

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

    万水千山总是情,打赏一分行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主,哈哈哈(っ•̀ω•́)っ✎⁾⁾!

  • 相关阅读:
    使用Fiddler和雷电模拟器抓取安卓https请求
    Robot Framework -- 安装接口测试库
    Robot Framework --为了进行Web测试,安装SeleniumLibrary外部库
    robotframework+python3+eclipse+RED自动化测试框架初学笔记
    LeetCode Weekly Contest 27
    LeetCode Weekly Contest 26
    京东4.7实习笔试题
    牛客网模拟笔试 2
    4.1几道最近的题目
    网易3.25实习笔试
  • 原文地址:https://www.cnblogs.com/mahmud/p/10226764.html
Copyright © 2011-2022 走看看