简体   繁体   English

在 javascript ES6 中向 Object 类添加一个方法

[英]add a method to Object class in javascript ES6

I have an Object which I am getting from API response.我有一个从 API 响应中得到的对象。 Now I want to perform some operation on that object and I want to do it in prototype way.现在我想对那个对象执行一些操作,我想以原型的方式来做。

let's say I am getting following object假设我正在关注对象

const user = {
 name: "Carlos",
 gender: "male"
}

Now I want to create a prototype function which can run directly on object like.现在我想创建一个可以直接在对象上运行的原型函数。 user.isMale()

how can I achieve the same in ES6我如何在 ES6 中实现相同的目标

I would recommend to use es6 classes我建议使用es6 类

class User{
    constructor(user = {}){
        this.name = user.name;
        this.gender = user.gender;
    }

    isMale(){
        return this.gender === 'male';
    }
}

let carlos = new User({'carlos', 'male'})

carlos.isMale() // true

and if you retrieve an array of those users you could then map them in this way.如果您检索这些用户的数组,则可以以这种方式映射它们。

usersArray = usersArray.map(user => new User(user));

 function User(name, gender) { this.name = name; this.gender = gender; } User.prototype.isMale = function() { return this.gender === 'male'; } const user = new User('john', 'male'); alert(user.isMale());

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM