-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathq40.ts
More file actions
29 lines (25 loc) · 1.28 KB
/
q40.ts
File metadata and controls
29 lines (25 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Album: Write a function called make_album() that builds a Object describing a music album. The function should take in an artist name and an album title, and it should return a Object containing these two pieces of information. Use the function to make three dictionaries representing different albums. Print each return value to show that Objects are storing the album information correctly. Add an optional parameter to make_album() that allows you to store the number of tracks on an album. If the calling line includes a value for the number of tracks, add that value to the album’s Object. Make at least one new function call that includes the number of tracks on an album.
export default function q40(){
interface Album {
artist: string;
title: string;
numTracks?: number;
}
function makeAlbum(artist: string, title: string, numTracks?: number): Album {
const album: Album = {
artist: artist,
title: title,
};
if (numTracks) {
album.numTracks = numTracks;
}
return album;
}
const album1 = makeAlbum("Artist1", "Album1");
const album2 = makeAlbum("Artist2", "Album2", 10);
const album3 = makeAlbum("Artist3", "Album3", 15);
console.log(album1);
console.log(album2);
console.log(album3);
}
q40();