Javascript 必须将空对象作为参数ES6传递

Javascript 必须将空对象作为参数ES6传递,javascript,ecmascript-6,Javascript,Ecmascript 6,如果我用默认值创建一个类,如下所示- class SomeClass { constructor({ a = 0.00, b = 0.00, c = 14.00, d = 'xyz' }){ this.a = a; this.b = b; this.c = c; this.d = d; } } 我必须在创建实例时传递一个空对象 var sc

如果我用默认值创建一个类,如下所示-

class SomeClass {
    constructor({
        a = 0.00,
        b = 0.00,
        c = 14.00,
        d = 'xyz'
    }){
        this.a = a;
        this.b = b;
        this.c = c;
        this.d = d;

    }
}
我必须在创建实例时传递一个空对象

var sc = new SomeClass({});

如果我想在一个对象参数中设置默认值,或者我可以在构造函数中更改一些内容,这样我就可以执行这个
var sc=new SomeClass(),这是正常的吗创建我的对象?

此语法适用于我的Chrome:

class Test {
    constructor({a = 5} = {a: 6}) {
        console.log(a);
    }
}

new Test(); // 6
class-SomeClass{
构造函数(选项参数){
如果(选项参数===未定义){
选项arg={};
}
optionsArg?optionsArg.a中的this.a='a':0.00;
this.b='b'在optionsArg?optionsArg.b中:0.00;
optionsArg?optionsArg.c中的this.c='c':14.00;
optionsArg中的this.d='d'?optionsArg.d:'xyz';
}
}
var sc=新的SomeClass({});
Object.keys(sc.forEach)函数(prop){
控制台日志(prop,sc[prop]);
});设置默认值:

class SomeClass {
  constructor({
      a = 0.00,
      b = 0.00,
      c = 14.00,
      d = 'xyz'
  } = {}) { // <=
    this.a = a;
    this.b = b;
    this.c = c;
    this.d = d;
  }
}
class-SomeClass{
建造师({
a=0.00,
b=0.00,
c=14.00,
d='xyz'

}={}{//我该如何处理多个参数?@charsi我猜是这样的
构造函数({a=5,b=6}={a:6,b:7},{c=8}={c:9})
@charsi这很奇怪,codepen上的JavaScript代码似乎不是在浏览器环境中执行的,它只是通过使用babel工作。检查这个提琴:是的,在提琴和js bin中也工作。我猜是codepen的问题。谢谢你的回答。这很有效!谢谢。我想你是想在代码段中保留空对象。