markdown オブジェクトのプロパティディスクリプタを设定する

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown オブジェクトのプロパティディスクリプタを设定する相关的知识,希望对你有一定的参考价值。

var obj = {name: 'Tom'};

// オブジェクト自身が持つプロパティの属性値をプロパティディスクリプタオブジェクトで確認する
console.log(Object.getOwnPropertyDescriptor(obj, 'name'));
// -> Object {configurable: true, enumerable: true, value: "Tom", writable: true}

// プロパティディスクリプタの設定
Object.defineProperty(obj, 'name', {
  value: 'Bob',
  writable: true,
  enumerable: false,
  configurable: true
})

console.log(Object.getOwnPropertyDescriptor(obj, 'name'));
// -> Object {configurable: true, enumerable: false, value: "Bob", writable: true}

// まとめてプロパティディスクリプタの設定
var person1 = Object.defineProperties({}, {
  _name: {
    value: 'Tom',
    writable: true,
    enumerable: true,
    configurable: true
  },
  name: {
    get: function() {return this._name},
    set: function(value) {
      var str = value.charAt(0).toUpperCase() + value.substring(1);
      this._name = str;
    },
    enumerable: true,
    configurable: true
  }
});

console.log(Object.getOwnPropertyDescriptor(person1, 'name'));

// Object.create
var group = {
  groupName: 'Tennis circle',
  sayGroupName: function() {console.log(`belong to ${this.groupName}`)}
};

var person2 = Object.create(group, {
  name: {
    value: 'Tom',
  },
  age: {
    value: 18
  },
  sayName: {
    value: function() {console.log(`I'm ${this.name}`)}
  }
});

person2.sayName();
JS-オブジェクトのプロパティディスクリプタを設定する
---------------------------


A [Pen](https://codepen.io/taquaki/pen/POeJLR) by [Takaaki Sato](https://codepen.io/taquaki) on [CodePen](https://codepen.io).

[License](https://codepen.io/taquaki/pen/POeJLR/license).

以上是关于markdown オブジェクトのプロパティディスクリプタを设定する的主要内容,如果未能解决你的问题,请参考以下文章

markdown オブジェクトのプロパティの値一覧を出す

javascript 的JavaScriptのオブジェクトのプロパティとメソッド一覧および,その中身を确认

markdown オブジェクトの判定

javascript オブジェクトの生成Object.create(null)

java オブジェクトの顺序付けについてStringLengthComparator

java オブジェクトの顺序付けについてComparatorSample