JS用构造函数在对象中创建对象

时间:2016-03-15 23:49:21

标签: javascript oop properties

我在将属性赋值给使用构造函数INSIDE其他函数

创建的对象时遇到问题
   var something = {
    property1: 'sth',
    object: new Object()
    }

并且它可以在对象内部创建对象,但每次我尝试将属性分配给对象内的对象,如

var something = {
    property1: 'sth',
    object: new Object(),
    object.property: 'anything'
    }

它显示错误,未捕获syntaxError:意外令牌。 ,albo尝试使用object ['property'],但显示“意外令牌[”,那么我如何分配它?

1 个答案:

答案 0 :(得分:2)

您可以分两步完成:

var something = {
  property1: 'sth',
  object: new Object(),
};

something.object.property = 'anything';

或使用Object.assign将属性合并到创建的对象中:

var something = {
  property1: 'sth',
  object: Object.assign(new Object(), {
    property: 'anything',
  }),
};

当然,如果是创建对象的那个(而不是创建对象的某些第三方函数),则不需要使用new Object。只需使用对象文字。