Baseado apenas no que você escreveu, não dá pra entender 100% a realidade do seu código. Porém, criar uma coluna a mais na tabela X para receber uma array de Ids, invés de criar uma coluna nova (que é o comum numa relação many-to-many), pode te dar mais trabalho em alguns outros pontos.
Por exemplo seus selects de dados sem filtro de ID, ou qualquer ação na tabela Y que não receberá os Ids relacionais da tabela X.. enfim.
Acabaria que muito desse tratamento iria sobrar para o backend executar, o que pode parecer irrelevante em códigos pequenos, mas custoso para códigos maiores.
1