// Data
const account1 = {
owner: 'Jason Mike',
movements: [200, 450, -400, 3000, -650, -130, 70, 1300],
interestRate: 1.2, // %
pin: 1111,
};
const account2 = {
owner: 'Jessica Davis',
movements: [5000, 3400, -150, -790, -3210, -1000, 8500, -30],
interestRate: 1.5,
pin: 2222,
};
const account3 = {
owner: 'Steven Thomas Williams',
movements: [200, -200, 340, -300, -20, 50, 400, -460],
interestRate: 0.7,
pin: 3333,
};
const account4 = {
owner: 'Sarah Smith',
movements: [430, 1000, 700, 50, 90],
interestRate: 1,
pin: 4444,
};
const accounts = [account1, account2, account3, account4];
//creating a owners array
const owners = [];
owners.push(accounts.map(acc => acc.owner).flat());
owners.push('Chris John');
owners.flat();
console.log(owners.sort());
output
why is it creating a nested array and not appending to the existing array
ps=> sorry this is my first question. Apologies if any mistakes

Why make it complex first creating an empty array and then push the elements and then flat.
Use map directly and it will return result in a brand new array and then push the element into it.