替代多个Object.defineProperty

马蒂·华莱士(Marty Wallace)

给定产品可能具有多个属性,例如名称,价格,sku,描述等,以下内容将用很长的时间来描述产品模型...

function Product(data) {

    var productData = data || {};

    Object.defineProperty(this, "sku", {
        get: function() {
            return productData.sku;
        }
    });

    Object.defineProperty(this, "name", {
        get: function() {
            return productData.name;
        }
    });

    Object.defineProperty(this, "price", {
        get: function() {
            return productData.price;
        }
    });
}

module.exports = Product;

javascript中有哪些替代方法?通常如何处理?

列维

您可以使用一个循环来定义所有属性:

var self = this;
Object.keys(productData).forEach(function(prop){
    Object.defineProperty(self, prop, {
        get: function() {
            return productData[prop];
        }
    });
});

演示版

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

替代多个Object.defineProperty

来自分类Dev

IE8的Object.defineProperty替代

来自分类Dev

IE8的Object.defineProperty替代

来自分类Dev

是Object.defineProperty还是.prototype?

来自分类Dev

Object.defineProperty设置器函数有多个参数?

来自分类Dev

Object.defineProperty vs Vanilla属性

来自分类Dev

结合使用Object.defineProperty和RangeError

来自分类Dev

描述用Object.defineProperty定义的属性

来自分类Dev

使用Object.defineProperty及其“获取”功能

来自分类Dev

描述用Object.defineProperty定义的属性

来自分类Dev

Object.defineProperty数据绑定范围

来自分类Dev

Object.defineProperty() 和 Object.defineProperties() 之间的性能差异

来自分类Dev

在Object.defineProperty中调用父级实现

来自分类Dev

方法的起源,如Object.defineProperty,String.fromCharCode()

来自分类Dev

具有构造函数和原型的Object.defineProperty

来自分类Dev

如何使用GCC重命名Object.defineProperty创建的属性

来自分类Dev

Google Chrome Object.defineProperty中的错误行为?

来自分类Dev

Object.defineProperty的主要用例是什么?

来自分类Dev

直接设置Javascript属性而不是Object.defineProperty

来自分类Dev

Object.defineProperty-范围和内部函数返回对象?

来自分类Dev

如何列出用Object.defineProperty定义的属性

来自分类Dev

如何解决Object.defineProperty的可配置问题?

来自分类Dev

Object.defineProperty,从类内部获取“ this”,而不是“ window”

来自分类Dev

javascript'use strict'和Object.defineProperty setter

来自分类Dev

chrome devtool下Object.defineProperty道具不可见

来自分类Dev

用Object.defineProperty定义的属性的Javascript继承

来自分类Dev

Javascript'Object.defineProperty'仅接受原型对象作为参数

来自分类Dev

我可以在object.defineProperty()上传递属性数组吗?

来自分类Dev

在Object.defineProperty中使用getter和setter

Related 相关文章

  1. 1

    替代多个Object.defineProperty

  2. 2

    IE8的Object.defineProperty替代

  3. 3

    IE8的Object.defineProperty替代

  4. 4

    是Object.defineProperty还是.prototype?

  5. 5

    Object.defineProperty设置器函数有多个参数?

  6. 6

    Object.defineProperty vs Vanilla属性

  7. 7

    结合使用Object.defineProperty和RangeError

  8. 8

    描述用Object.defineProperty定义的属性

  9. 9

    使用Object.defineProperty及其“获取”功能

  10. 10

    描述用Object.defineProperty定义的属性

  11. 11

    Object.defineProperty数据绑定范围

  12. 12

    Object.defineProperty() 和 Object.defineProperties() 之间的性能差异

  13. 13

    在Object.defineProperty中调用父级实现

  14. 14

    方法的起源,如Object.defineProperty,String.fromCharCode()

  15. 15

    具有构造函数和原型的Object.defineProperty

  16. 16

    如何使用GCC重命名Object.defineProperty创建的属性

  17. 17

    Google Chrome Object.defineProperty中的错误行为?

  18. 18

    Object.defineProperty的主要用例是什么?

  19. 19

    直接设置Javascript属性而不是Object.defineProperty

  20. 20

    Object.defineProperty-范围和内部函数返回对象?

  21. 21

    如何列出用Object.defineProperty定义的属性

  22. 22

    如何解决Object.defineProperty的可配置问题?

  23. 23

    Object.defineProperty,从类内部获取“ this”,而不是“ window”

  24. 24

    javascript'use strict'和Object.defineProperty setter

  25. 25

    chrome devtool下Object.defineProperty道具不可见

  26. 26

    用Object.defineProperty定义的属性的Javascript继承

  27. 27

    Javascript'Object.defineProperty'仅接受原型对象作为参数

  28. 28

    我可以在object.defineProperty()上传递属性数组吗?

  29. 29

    在Object.defineProperty中使用getter和setter

热门标签

归档