Bonjour,
une petite question javascript.
j'ai 2 tableaux tab1 et tab2, et je souhaite mettre le contenu de tab1 dans tab2.
comment puis je faire?
Merci de votre aide.
Version imprimable
Bonjour,
une petite question javascript.
j'ai 2 tableaux tab1 et tab2, et je souhaite mettre le contenu de tab1 dans tab2.
comment puis je faire?
Merci de votre aide.
:idea:Citation:
innerHTML
tableau = array ou table ?
c'est 2 array
Code:
1
2
3
4
5
6
7 <table id="tableau1"> tout plein de choses </table> <table id="tableau2"> </table>
:?:Code:document.getElementById('tableau2').innerHTML = document.getElementById('tableau1').innerHTML;
le 2 est vide au départ ?
tu les declares comment ?
on vous a dit Array !!!
Code:
1
2
3
4
5
6
7
8
9
10
11 <script type='text/javascript'> var tab1= new Array('un','deux','trois') var tab2= new Array() tab2=tab1 alert(tab2) var tab3=new Array('quatre' ,'cinq','six') tab1=tab2.concat(tab3) alert(tab1) alert(tab1.length) </script>
Coucou, j'ai un soucis avec ça
Cette solution marche bien sauf que tab2 n'est pas une copie de tab1 mais une référence.
Je m'explique l'affectation tab2 = tab1 fonctionne mais si on veut toucher aux données de tab2 on va aussi modifier celles dans tab1...
Un moyen d'empêcher ça ? et autrement qu'en copiant ligne par ligne tab1 dans tab2 ? ;)
Plus de détails si vous n'avez pas compris ma question :
En gros, dans mon code javascript j'ai deux Array : Adonnees et Atravail
Je veux modifier les données dans Adonnees sans l'altérer donc je créé un array Atravail pour faire mes manips.
Le code :
l'affichage est le même !!Code:
1
2
3
4
5
6
7
8 Adonnees = new Array(); Atravail = new Array(); Adonnees = données issues d'une base de données; Atravail = Adonnees; Atravail[0] = null; alert(Atravail[0]); alert(Adonnees[0]);
Des idées pour résoudre ce problème ?
Bon j'ai trouvé une réponse à priori :
Source : http://www.kps.fr/formation/web/jsCitation:
Les trois types number, boolean et string sont dits scalaires. Lorsqu'une variable scalaire est utilisée dans une expression, à moins qu'elle soit forcée à se convertir en objet, sa valeur est copiée. En revanche, lorsqu'un objet est utilisé, il n'est pas cloné. JavaScript n'a pas de syntaxe pour forcer le passage par référence d'une variable scalaire ni forcer le clonage d'un objet, comme les pointeurs en C ou les références en PHP. Mais il est très simple de cloner un objet explicitement, et tout aussi simple de transformer une variable scalaire en objet pour qu'elle en ait le comportement.
Donc je vais devoir, pour dupliquer mon tableau, le copier valeur par valeur...
Si quelqu'un a une autre idée je suis largement preneur.