欢迎光临
我们一直在努力

babel defineProperty

ES2015允许使用表达式作为属性名。
defineProperty
const HELLO = 'hello';

let dog = {
  [HELLO](){
   console.log('hello'); 
  }
}

编译后:

"use strict";

// 对象添加属性
function _defineProperty(obj, key, value) {
  if (key in obj) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true, // 可枚举
      configurable: true, // 可配置
      writable: true // 可写
    });
  } else {
    obj[key] = value;
  }
  return obj;
}

var HELLO = "hello";

// 创建对象
var dog = _defineProperty({}, HELLO, function() {
  console.log("hello");
});
赞(0)
版权归原作者所有,如有侵权请告知。达维营-前端网 » babel defineProperty

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址