02-16-2018 03:08 AM
I am trying to use ‘in’ clause in a mapper snap. But it does not evaluate correctly.
30 in [30,40,50] ----> false
30 in [‘30’,‘4’,‘50’] ----> false
(x => x in [‘4’,‘5’,‘6’])(4) ----> false
Has anyone tried it already? Am I missing anything?
Solved! Go to Solution.
02-21-2018 05:18 AM
Syntax for checking if a value is in an array is the same as in javascript.
Try:
[30,40,50].indexOf(30) != -1 —> true
[30,40,50].indexOf(90) != -1 —> false
The reason for the “!= -1” is that indexOf returns -1 if the element is not found in an array. Otherwise it returns the index.
Same method works for strings.
02-16-2018 09:17 AM
Verified with Dev that “in” tests for index, not value, so 30 in [30,40,50]
will be false, but 2 in [30,40,50]
will be true.
02-17-2018 01:39 AM
Thanks for the help.
However I think it should search for values #enhancement-requests
02-17-2018 05:34 AM
it currently works similar to JavaScript: in operator - JavaScript | MDN
02-21-2018 05:18 AM
Syntax for checking if a value is in an array is the same as in javascript.
Try:
[30,40,50].indexOf(30) != -1 —> true
[30,40,50].indexOf(90) != -1 —> false
The reason for the “!= -1” is that indexOf returns -1 if the element is not found in an array. Otherwise it returns the index.
Same method works for strings.