Haciendo referencia a la página de documentación a la que se vinculó, en la sección "Escapar de los identificadores de consulta ", debería poder hacer esto:
mysql.query('SELECT * FROM ?? where name = ?', [this.table, this.votesTable]
La mayoría de los marcos SQL no permiten el uso de parámetros para nada más que valores individuales. . Es decir. no identificadores de tablas, identificadores de columnas, listas de valores o palabras clave de SQL. La biblioteca mysqljs es poco común porque tiene soporte para citar identificadores y pares clave/valor.
Re tu comentario:
El ??
marcador de posición es para identificadores. Los identificadores deben citarse de forma diferente a los valores. En MySQL, un valor de cadena se cita como 'string'
pero un identificador se cita con comillas invertidas.
SELECT * FROM `mytable` where name = 'myname'
La clase mysqljs usa el ??
como un marcador de posición especial para un identificador, para que pueda decirle a la clase que debe estar entre comillas.