Lets say we need to make a function doSomething
. we need to do it in a way so that it can handle both arguments: (1) a string and (2) an array of strings.
To achieve that previously I used to do something like this:
function doSomething(strs) { function _doSomething(str) { // some mysterious stuff happening here console.log(str) } if (Array.isArray(strs)) { return strs.map(str => _doSomething(str)) } else { return _doSomething(strs) } } doSomething(["hello", "world"]) doSomething("hello")
now since I learned recursion I do this:
function doSomething(strs) { if (Array.isArray(strs)) { return strs.map(str => doSomething(str)) } else { console.log(strs); } } doSomething(["hello", "world"]) doSomething("hello")
Top comments (2)
for a while i added something like this to my functions:
but typescript don`t like it.
Typescript doesnt know anything 😑