3 ms·
Could someone explain how {@foo} = bar compiles into this.foo = bar.foo;?
by nilbus 15y ago
Could someone explain how {@foo} = bar compiles into this.foo = bar.foo;?
- yesbabyyes 15y ago"@" is an alias for "this.", so "@foo" is the same as "this.foo". {foo} = bar is using destructuring assignment, it means, take property "foo" of bar and put it in variable foo, so {foo} = bar compiles to var foo = bar.foo;
- nilbus 15y agoThanks! It was the destructuring part that I wasn't understanding right away.
- yesbabyyes 15y agoNo problem! CoffeeScript's destructuring is really nice, IMO: [first, rest..., last] = someArray professions = programmer: studyTime: "5 years" salary: 10000 salesman: studyTime: "2 years" salary: 15000 {programmer: {salary}} = professions console.log "A programmer's salary is %s", salary EDIT: Fixed bug, "developer" should be "programmer".
- jrnkntl 15y ago{developer: {salary}} = professions