--- id: ac6993d51946422351508a41 title: Truncate a String isRequired: true challengeType: 5 --- ## Description
Truncate a string (first argument) if it is longer than the given maximum string length (second argument). Return the truncated string with a ... ending. Remember to use Read-Search-Ask if you get stuck. Write your own code.
## Instructions
## Tests
```yml tests: - text: 'truncateString("A-tisket a-tasket A green and yellow basket", 8) should return "A-tisket...".' testString: 'assert(truncateString("A-tisket a-tasket A green and yellow basket", 8) === "A-tisket...", ''truncateString("A-tisket a-tasket A green and yellow basket", 8) should return "A-tisket...".'');' - text: 'truncateString("Peter Piper picked a peck of pickled peppers", 11) should return "Peter Piper...".' testString: 'assert(truncateString("Peter Piper picked a peck of pickled peppers", 11) === "Peter Piper...", ''truncateString("Peter Piper picked a peck of pickled peppers", 11) should return "Peter Piper...".'');' - text: 'truncateString("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length) should return "A-tisket a-tasket A green and yellow basket".' testString: 'assert(truncateString("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length) === "A-tisket a-tasket A green and yellow basket", ''truncateString("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length) should return "A-tisket a-tasket A green and yellow basket".'');' - text: 'truncateString("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length + 2) should return "A-tisket a-tasket A green and yellow basket".' testString: 'assert(truncateString(''A-tisket a-tasket A green and yellow basket'', ''A-tisket a-tasket A green and yellow basket''.length + 2) === ''A-tisket a-tasket A green and yellow basket'', ''truncateString("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length + 2) should return "A-tisket a-tasket A green and yellow basket".'');' - text: 'truncateString("A-", 1) should return "A...".' testString: 'assert(truncateString("A-", 1) === "A...", ''truncateString("A-", 1) should return "A...".'');' - text: 'truncateString("Absolutely Longer", 2) should return "Ab...".' testString: 'assert(truncateString("Absolutely Longer", 2) === "Ab...", ''truncateString("Absolutely Longer", 2) should return "Ab...".'');' ```
## Challenge Seed
```js function truncateString(str, num) { // Clear out that junk in your trunk return str; } truncateString("A-tisket a-tasket A green and yellow basket", 8); ```
## Solution
```js function truncateString(str, num) { if (num >= str.length) { return str; } return str.slice(0, num) + '...'; } truncateString("A-tisket a-tasket A green and yellow basket", 8); ```