C Sharper
C Sharper

Reputation: 8646

Javascript : How to add comma to string element in interface

Hi have below structure for user interface -

export interface IUser {
  EMPLOYEE_NAME :string,
  EMPLOYEE_PID : string
}

At a point in a code , I am receiving array of IUser - IUser[] with multiple employeenames and their pids.

Eg.

{EMPLOYEE_NAME:'XYZ',EMPLOYEE_PID :'A123'},
{EMPLOYEE_NAME:'ABC',EMPLOYEE_PID :'B123'},

I want to fetch comma seperated PIDs - 'A123','B123'

I tried with map and foreach but not able to loop properly as its interface.

Upvotes: 0

Views: 87

Answers (2)

Asif vora
Asif vora

Reputation: 3359

You can also use Array.prototype.map.call to achieve.

    const data = [
     {EMPLOYEE_NAME:'XYZ',EMPLOYEE_PID :'A123'},
     {EMPLOYEE_NAME:'ABC',EMPLOYEE_PID :'B123'}
    ];

    Array.prototype.map.call(data,
        function(item) { 
            return item['EMPLOYEE_PID']; 
        }
    ).join(",");

Output - 'A123,B123'

Upvotes: 1

Ayaz
Ayaz

Reputation: 2121

You can use Array.prototype.map and Array.prototype.join to achieve.

let data = [{EMPLOYEE_NAME:'XYZ',EMPLOYEE_PID :'A123'},
{EMPLOYEE_NAME:'ABC',EMPLOYEE_PID :'B123'}];

let result = data.map(x => x.EMPLOYEE_PID).join(',');
console.log(result);

If you want to wrap the ids in comma

let data = [
  {EMPLOYEE_NAME:'XYZ',EMPLOYEE_PID :'A123'},
  {EMPLOYEE_NAME:'ABC',EMPLOYEE_PID :'B123'}
];
let result = data.map(x => `'${x.EMPLOYEE_PID}'`).join(',');
console.log(result);

Upvotes: 2

Related Questions