23 lines
721 B
Markdown
23 lines
721 B
Markdown
---
|
|
title: mapString
|
|
tags: string,intermediate
|
|
---
|
|
|
|
Creates a new string with the results of calling a provided function on every character in the given string.
|
|
|
|
- Use `String.prototype.split('')` and `Array.prototype.map()` to call the provided function, `fn`, for each character in `str`.
|
|
- Use `Array.prototype.join('')` to recombine the array of characters into a string.
|
|
- The callback function, `fn`, takes three arguments (the current character, the index of the current character and the string `mapString` was called upon).
|
|
|
|
```js
|
|
const mapString = (str, fn) =>
|
|
str
|
|
.split('')
|
|
.map((c, i) => fn(c, i, str))
|
|
.join('');
|
|
```
|
|
|
|
```js
|
|
mapString('lorem ipsum', c => c.toUpperCase()); // 'LOREM IPSUM'
|
|
```
|