Hacker News new | ask | show | jobs
by yeahbutbut 4443 days ago
And so far everyone has missed telling the poor OP how to avoid writing two equality checks...

    if( [80, 443].indexOf(port) !== -1 && http === false )
2 comments

Are you certain that that's an improvement?
For two options, almost certainly not ;-)

For N ports, or for a port list defined from a config file however it could be. It's even nicer in python:

    ports = [80, 443, ...]
    if port in ports and http:
        ...
Or with underscore:

    var ports = [80, 443, ...];
    if(_(ports).contains(port) && http) {
        ...
    }
Good collections make it better than manually checking the return code or checking an explicit set of port values. Also configuration > magic_nums.
If( ~[80, 443].indexOf(port) && http=== false)