Destructure Array and assign to property object in one line

Viewed 296

I have these Javascript lines :

const record = {};
const parts = ['deviceId-abc', 'messagesId-def'];

record.deviceId = parts[0];
record.messageId = parts[1];

I have a linter error prefer-destructuring on the last two lines but I am not sure how I can both destructure an array and assign the value to an object property.

thanks,

5 Answers

You can destructure into your properties

const record = {};
const parts = ['deviceId-abc', 'messagesId-def'];

[record.deviceId, record.messageId] = parts;

You could destructure an array and take the properties as target.

const
    record = {},
    parts = ['deviceId-abc', 'messagesId-def'];

[record.deviceId, record.messageId] = parts;

console.log(record);

I'd personally do this:

const [deviceId, messageId] = ['deviceId-abc', 'messagesId-def'];
const record = { deviceId, messageId };

Try something like this

const record = {};
const [parts,message]=['deviceId-abc', 'messagesId-def'];

record.deviceId = parts
record.messageId = message

You can destructure the array-like this

const record = {};
const parts = ['deviceId-abc', 'messagesId-def'];

[record.deviceId,record.messageId]=parts;

console.log(record);

Related