Estoy haciendo un experimento y quiero que se muestre una parte si se presiona y se salta una determinada tecla ("b"), si se presiona cualquier otra tecla. La tecla que se presiona se guarda en key_resp_3.keys y si visualizo lo que se guarda en la variable key_resp_3.keys es simplemente b. Así que pensé que esta sería la comparación correcta:
if ((key_resp_3.keys != "b")) { continueRoutine = false; }Sin embargo, en este caso, la rutina siempre se omite, por lo que de alguna manera "b" obviamente no es la forma en que se guarda la clave en la variable key_resp_3.keys. ¿Alguien tiene una idea de cuál es la comparación correcta en su lugar?
¡Gracias!
Difícil saber la causa raíz del problema sin el resto del código. Pero simplemente puede usar un detector de eventos como el siguiente
document.addEventListener('keydown', function(event) { console.log(event.key) const key = event.key if(key == "b") alert("b presed") }); ¿O puede ser tan simple como intentar configurar const key_resp_3 = event.key y luego verificar if key_resp_3.keys para intentar acceder a variable.key.key ?
En este caso especial: dado que las keys son una matriz, puede usar
Does contains b key_resp_3.keys.includes('b') Does not contains b !key_resp_3.keys.includes('b')