2017-06-12 15 views
1

パラメータ'フレッド'?は、私たちが行うことができますES6で

私は渡されたオブジェクトを変更することはできません。私はこのや他の適切なES6のアプローチを達成するために、破壊を使用したいと思います。

+0

をあなたはNAME' 'の構造を知っていますか?または、すべての値をログに記録しますか? –

+0

オブジェクトの構造はshow ... event.target.name ...可能であれば、ES6の構造化を使用してevent.target.nameの値を記録したいだけです – danday74

答えて

2

:両方のパラメータ内でここ

const myFunc = ({event: {target: {name}}}) => { 
 
    console.log(name) 
 
} 
 

 
myFunc({event: {target: {name: 'fred'}}})
.as-console-wrapper { max-height: 100% !important; top: 0; }

は、他の実装ですが、2番目は完全にoptionnalです:

const myFunc = (
 
     {name: name}, 
 
     {event: {target: {name: eventTargetName = ''} = ''} = ''} = '' 
 
    ) => { 
 
     console.log(name, eventTargetName) 
 
    } 
 

 
myFunc({name:'fred'}) 
 
myFunc({name:'papi'}, {event: {target: {name: 'fredo'}}})
.as-console-wrapper { max-height: 100% !important; top: 0; }

+0

.as-console-wrapper ===受け入れられた答え – danday74

1

はこれを試してみてください:

let myFunc = ({ event: { target: { name } } }) => { 
 
    console.log(name); 
 
}; 
 

 
myFunc({ event: { target: { name:'fred' } } }); // => logs 'fred'

も参照examples on MDN。あなたは、単に次のように行うことができます

0

あなたが行うことができます。

let myFunc = (obj) => { 
 
    console.log(obj.event.target.name); 
 
}; 
 

 
myFunc({ event: { target: { name: 'fred' } } });

または:

let myFunc = ({event: {target: { name } } }) => { 
 
    console.log(name); 
 
}; 
 

 
myFunc({ event: { target: { name: 'fred' } } });

+0

OPが尋ねられました破壊や他のES 6アプローチを用いた解決のために。 –

関連する問題