As baao notes, since 2019 you can use Object.fromEntries(arr)
(docs) to do exactly this on all modern browsers:
var arr = [['cardType', 'iDEBIT'],
['txnAmount', '17.64'],
['txnId', '20181']];
console.log(Object.fromEntries(arr));
If that’s not available, my previous solution was to map to an array of key-value objects and combine the objects by spreading into Object.assign:
Object.assign(...arr.map(([key, val]) => ({[key]: val})))