Cannot read property 'length' of undefined (getting typed response on Pavlovia)

This is what the JS looks like leading up to that error:

  if (key_resp_2.status === PsychoJS.Status.STARTED) {
      let theseKeys = key_resp_2.getKeys({keyList: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0', 'return', 'backspace'], waitRelease: false});
      _key_resp_2_allKeys = _key_resp_2_allKeys.concat(theseKeys);
      if (_key_resp_2_allKeys.length > 0) {
        key_resp_2.keys = _key_resp_2_allKeys.map((key) => key.name);  // storing all keys
        key_resp_2.rt = _key_resp_2_allKeys.map((key) => key.rt);
      }
    }
    
    if ((key_resp_2.keys.length > 0)) {

So – key_resp_2.keys is only defined if:

key_resp_2.status === PsychoJS.Status.STARTED
and
if (_key_resp_2_allKeys.length > 0)

So you could try using
if (_key_resp_2_allKeys.length > 0)

1 Like