I have a function that removes tags inside a collection, sometimes the parameter can be an Array others times just a variable.
I'm doing the parsing like so, just wondering if there is a cleaner way to do it?
I already tried [...tag] but that just split the string
this.removeNotificationTag = async (userId, tag) => {
const tagsToRemove = Array.isArray(tag) ? tag : [tag];
// if tag is a variable make it an array.
};
Tried the spread operator, but that just splitted the string.
Your code is fine, that's the generic way to do it.
If your input is either string
or string[]
, you could also use typeof
:
this.removeNotificationTag = async (userId, tag) => {
const tagsToRemove = typeof tag === 'string' ? [tag] : tag;
// the rest of the code...
};
But this is less generic and the code is the same length, so I would stick with what you wrote in the first place.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.