cela fait plusieurs années que je fais des bricolages avec javascript mais j'ai remarqué que je n'ai toujours pas compris comment sont liées les variables entre elle quand on utilise des références.

par exemple si on part de ce code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
let tableau = [["A"], ["B"]];
tableau[0] = tableau[1];
tableau[1][0] = "C";
ici la 2e ligne assigne à tableau[0] la référence à tableau[1] et donc les 2 cases pointent vers le même objet.
et donc après la 3e ligne, on a dans tableau [["C"], ["C"]].

mais si on change la 3e ligne pour faire ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
let tableau = [["A"], ["B"]];
tableau[0] = tableau[1];
tableau[1] = ["C"];
je m'attendais à ce que la 3e ligne stocke dans tableau[1] la référence à l'objet ["C"] et donc je m'attendais à retrouver le même résultat [["C"], ["C"]] puisque les cases 0 et 1 sont liées.
mais le résultat est [["B"], ["C"]] et donc je n'ai pas compris à quel moment je n'ai pas compris ce qu'il se passe (incompréhenception...).

je viens de lire plusieurs pages de ce type mais cela ne m'aide pas :
https://developer.mozilla.org/fr/doc...mmar_and_types