Well those were some quick answers, but yes as everyone's mentioned, the spread attribute in ES6 is commonly used to accomplish this:
var props = { a: 'Jim', b: 'Bob', c: 'Bill' };
return <MyComponent {...props} />
It's also useful to know that the order you define your props on the component is important, and can often be used to do loose conditional work, later props will override previous ones, so you can do things like:
var props = { a: 'Jim', b: 'Bob', c: 'Bill' };
return <MyComponent {...props} a={"James"} /> //Override 'Jim' with 'James'
Or:
var option = { a: 'Jim', b: 'Bob', c: 'Bill' };
return <MyComponent c={"William"} d={"Henry"} {...props} />