Hola:
Con indexOf puedes obtener la ubicación de una subcadena dentro de una cadena, y si ese valor es -1 es porque no existe tal coincidencia:
"cadena".indexOf("ad") = 1...
"cadena".indexOf("1d") = -1...
Y con expresiones regulares podrías conseguir valores lógicos true/false
/ad/.test("cadena") = true
/id/.test("cadena") = false
Sobre la forma de "rejuntar" condiciones existe el Y-lógico (and) = && y el Ó-lógico (or) = ||
Saludos