Skip to content

Commit c85f786

Browse files
authored
Name Shuffler in JS
1 parent 697434d commit c85f786

File tree

3 files changed

+48
-1
lines changed

3 files changed

+48
-1
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
// 1 Plain solution
2+
function nameShuffler(str) {
3+
const spaceIndex = str.indexOf(" ");
4+
const firstName = str.slice(0, spaceIndex);
5+
const lastName = str.slice(spaceIndex + 1);
6+
7+
return lastName + " " + firstName;
8+
}
9+
10+
// 2 Optimized solution
11+
function nameShuffler(str) {
12+
const name = str.split(" ")
13+
return `${name[1]} ${name[0]}`;
14+
}
15+
16+
// 3 Clever solution
17+
function nameShuffler(str) {
18+
return str.split(" ").reverse().join(" ");
19+
}
20+
21+
// 4 Coding golf
22+
nameShuffler = str =>
23+
str
24+
.split(" ")
25+
.reverse()
26+
.join(" ")
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Name Shuffler (8 kyu)
2+
3+
https://www.codewars.com/kata/559ac78160f0be07c200005a
4+
5+
Write a function that returns a string in which firstname is swapped with last name.
6+
7+
```
8+
nameShuffler('john McClane'); => "McClane john"
9+
```

README.md

+13-1
Original file line numberDiff line numberDiff line change
@@ -660,7 +660,7 @@ JS Video Tutorial) :
660660
/ [[Java](<7kyu/(7%20kyu)%20Two%20to%20One/(7%20kyu)%20Two%20to%20One.java>)]
661661
/ [[Go](<7kyu/(7%20kyu)%20Two%20to%20One/(7%20kyu)%20Two%20to%20One.go>)]
662662

663-
## 8 kyu Katas (44 -> 55)
663+
## 8 kyu Katas (45 -> 55)
664664

665665
**[(8 kyu) Abbreviate a Two Word Name](https://www.codewars.com/kata/abbreviate-a-two-word-name)**
666666
([Description](<8kyu/(8%20kyu)%20Abbreviate%20a%20Two%20Word%20Name/(8%20kyu)%20Abbreviate%20a%20Two%20Word%20Name.md>) +
@@ -926,6 +926,18 @@ JS Video Tutorial) :
926926
/ [Java](<8kyu/(8%20kyu)%20Multiply/(8%20kyu)%20Multiply.java>)]
927927
/ [[Go](<8kyu/(8%20kyu)%20Multiply/(8%20kyu)%20Multiply.go>)]
928928
<br>
929+
**[(8 kyu) Name Shuffler](https://www.codewars.com/kata/559ac78160f0be07c200005a/)**
930+
([Description](<8kyu/(8%20kyu)%20Name%20Shuffler/(8%20kyu)%20Name%20Shuffler.md>) +
931+
[JS Video Tutorial]) :
932+
[[JavaScript](<8kyu/(8%20kyu)%20Name%20Shuffler/(8%20kyu)%20Name%20Shuffler.js>)]
933+
/ [TypeScript]
934+
/ [Python]
935+
/ [Rust]
936+
/ [C++]
937+
/ [C#]
938+
/ [Java]
939+
/ [Go]
940+
<br>
929941
**[(8 kyu) Opposite number](https://www.codewars.com/kata/opposite-number)**
930942
([Description](<8kyu/(8%20kyu)%20Opposite%20number/(8%20kyu)%20Opposite%20number.md>) +
931943
[JS Video Tutorial](https://www.youtube.com/watch?v=dOVEH7v5EmY)) :

0 commit comments

Comments
 (0)