javascript tome xxii accessibilite d'elements d'array en JavaScript
Transcription
javascript tome xxii accessibilite d'elements d'array en JavaScript
A C C E S S I B I LT É D E S É L É M E N T S D ’ A R R AY & & D ’ O B J E C T J AVA S C R I P T (Programmation Internet) V O L . X X I I Pour Débutants J.B. Dadet DIASOLUKA Luyalu Nzoyifuanga +243 - 851278216 - 899508675 - 995624714 - 902263541 - 813572818 [email protected] Les fonctions en JavaScript sont de simples objets exactement comme les autres, et peuvent donc être créées avec l’opérateur « new ». En plus, il existe en JavaScript un type de fonctions dit fonctions fléchées dont la syntaxe est présentée ci-dessous. Nous verrons aussi la différence entre parseInt, parseFloat et toString. Nous verrons ensuite comment accéder (atteindre) les éléments d’une collection, d’une array, et d’un objet. Nous verrons aussi la composition (représentation) interne de l’élément <input>. Création de Function avec « new Function » : <script type="text/javascript"> "use strict"; var mult = new Function('a', 'b', 'return a * b'); console.log(mult(Math.PI, Math.E)); /* 8.539734222673566 */ </script> Fonctions fléchées : <script type="text/javascript"> "use strict"; var f1 = (p1,p2) => p1*p1/p2 console.log(f1(80,182)) // 35.16483516483517 test.html:3:5 J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII let pds=80, taille=182 var f2 = _ => pds*pds/taille console.log(f2()) // 35.16483516483517 test.html:8:5 </script> Difference entre parseInt, parseFloat et toString : parseInt() : La fonction « parseInt() » lit dans la base spécifiée comme deuxième paramètre [par défaut la base correspondant au format d’écriture du nombre], l’entier qui commence une chaîne de caractères, et l’affiche TOUJOURS en décimal. parseFloat() : La fonction « parseFloat() » extrait le flottant qui commence une chaîne de caractères. toString() : La méthode « toString() » convertit le nombre en string et le renvoie dans la base que vous spécifiez en paramètre. Exemple, avec ou sans « use strict » : <script> "use strict"; var pI=parseInt("0x10 heures 30 secondes") // Lit 0x10 [en base utilisée {hexadécimale} (10h)] // et l'affiche TOUJOURS en décimale (16d). const h=parseInt("0100 jours",16) // Lit 0100 en base Hexadécimale spécifiée // et l'affiche TOUJOURS en décimale (16d). let o=pI.toString(8) // Lit 16d = 0x10 [TOUJOURS en décimale] // et l'affiche en octale (020), comme spécifié. const o1=parseInt("010") // La base octale n'est pas reconnue en entrée. // Lue en décimale. const o2=parseInt("010",8) // Lu en octale. console.dir(pI+" | "+h+" | "+o+" | "+o1+" | "+o2) Accessibilité éléments Array - 2/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII var pF1=parseFloat("0x10 heures 30 secondes") // Ne lit les hexédécimaux qu'avant le 'x' // et affiche donc TOUJOURS zéro. var pF2=parseFloat("16.85 heures",16) // Lit 16.85 [TOUJOURS en décimal] // et le renvoie TOUJOURS en décimale (16.50). var pF3=pF2*2 // pF2 avait reçu en décimal. let fo=pF2.toString(8) // Lit 16.85d [TOUJOURS en décimale] // et l'affiche en octale (20.663...), comme spécifié. const fo1=parseFloat("010") // La base octale n'est pas reconnue en entrée. // Lue en décimale. const fox=parseFloat("010",8) var fo2=fox * 2 // Lit et renvoie en décimal. console.dir(pF1+" | "+pF2+" | "+pF3+" | "+fo+" | "+fo1+" | "+fo2) //16 | 256 | 20 | 10 | 8 // 0 | 16.85 | 33.7 | 20.6631463146314632 | 10 | 20 </script> Accessibilité des éléments d’une Collection : <form name="fname"> <input id="r1" <input class="cR1" <input <input id="r4" <input </form> name="r1" name="r1" name="r3" name="r4" name="r5" Accessibilité éléments Array - 3/24 - value=1> value=2> value=3 checked> value=4 checked=true> value=5 checked=checked> jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII <script> "use strict"; console.log(document.fname[0].value) console.log(document.fname["r3"].value) console.log(document.getElementById("r1").value) // 1 // 2 // 3 console.log(document.fname[0].checked) // false console.log(document.fname["r3"].checked) // true console.log(document.querySelector(".cR1").checked) // false console.log(document.getElementById("r1").checked) // false const idx="r4"; console.log(document.getElementById(idx).checked) // true console.log(document.fname["r5"].checked) // true console.log(document.fname[0]) // <input id="r1" name="r1" value="1"> console.log(document.getElementById("r1")) // <input id="r1" name="r1" value="1"> console.log(document.fname["r3"]) // <input name="r3" value="3" checked=""> console.log(document.fname["r4"]) // <input id="r4" name="r4" value="4" checked="true"> console.log(document.fname["r5"]) // <input name="r5" value="5" checked="checked"> console.log(document.fname) // <form name="fname"> </script> Accessibilité des éléments d’une Array : <script> "use strict"; const p=Math.PI Accessibilité éléments Array - 4/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu var ar = [ "R1", p, Math.E, JavaScript Tome-XXII {"R1":"yours",2:"Hers",3:"Hers","Abdel":"Name","2":"Again" }, ["Dias",45,Math.PI,{},[]] ] console.log(ar) // Array(5) [ "R1", 3.141592653589793, 2.718281828459045, {…}, (5) […] ] // (5) […] // 0: "R1" // 1: 3.141592653589793 // 2: 2.718281828459045 // 3: Object { 2: "Again", 3: "Hers", R1: "yours", … } // 4: Array(5) [ "Dias", 45, 3.141592653589793, … ] // length: 5 // <prototype>: Array [] console.log(ar[1]) // 3.141592653589793 // console.log(ar.2) // missing ) after argument list[En savoir plus] test.html:12:18 var r3=3; console.log(ar[r3]) // Object { 2: "Again", 3: "Hers", R1: "yours", Abdel: "Name" } // {…} // 2: "Again" // 3: "Hers" // Abdel: "Name" // R1: "yours" // <prototype>: Object { … } console.log(ar["4"]) // 2.718281828459045 // Array(5) [ "Dias", 45, 3.141592653589793, {}, [] ] // (5) […] // 0: "Dias" // 1: 45 // 2: 3.141592653589793 // 3: Object { } // 4: Array [] // length: 5 Accessibilité éléments Array - 5/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu // <prototype>: Array [] </script> JavaScript Tome-XXII Nous venons de voir ci-dessus qu’on peut utiliser des littérales pour identifier/accéder aux éléments d’une Array. On peut aussi explicitement étiqueter les éléments d’une Array avec des noms littéraux au lieu de l’indexation numérique automatique : <script type="text/javascript"> "use strict"; let arr1 = []; arr1[0] = 10, arr1[5]=34, arr1[7]=67; let arr2 = []; arr2["zero"] = 10,arr2["cinq"] = 34, arr2["sept"] = 67; console.dir(arr1,arr2); console.dir(arr1[0],arr1[2],arr1[3], arr1[5],arr1[7]); console.dir(arr2["zero"],arr2["deux"], arr2["trois"],arr2["cinq"], arr2["sept"]); for(let i in arr1) console.log(i, arr1[i]) for(let i in arr2) console.log(i, arr2[i]) for(let i of arr1) console.log(i, arr1[i]) for(let i of arr2) console.log(i, arr2[i]) for(let i=0 ; i<arr1.length ; i++) console.log(i, arr1[i]) for(let i="zero" ; i<6 ; i++) Accessibilité éléments Array - 6/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII console.log(i, arr2[i]) // N'affiche rien ! </script> Notez les tailles des Arrays et les labels (« keys »). Accessibilité éléments Array - 7/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII Accessibilité des éléments d’un Objet : <script type="text/javascript"> "use strict"; const eventAlias="event"; const o = { nom:"Loyenge", age:100, [eventAlias]:{ 1977:"Médec Gén, ", 1980:"Spécial Opht" }, "dites qqc"(){ console.log( `${this.nom} , ${this.age}` ); } }; o["dites qqc"](); console.log(o.nom , o.age, o["nom"] , o["age"]); // Loyenge 100 Loyenge 100 console.log(o.event); // Object { 1977: "Médec Gén, ", 1980: "Spécial Opht" } console.log(o[eventAlias]); // Object { 1977: "Médec Gén, ", 1980: "Spécial Opht" } Accessibilité éléments Array - 8/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII console.log(o.event["1977"], o.event["1980"]); // Médec Gén, Spécial Opht console.log(o.event["2000"]); // undefined console.log(o.age); // 100 console.log(o[0] , o[1]); // undefined undefined </script> <script> "use strict"; var ob = function(p){ this.r1 = "R1"; this.r2 = p; this.r3 = Math.E; this.r4 = {"R1":"yours",2:"Hers", 3:"Hers","Abdel":"Name","2":"Again"}; this.r5 = ["Dias",45,Math.PI,{},[]] } var ar=new ob(9); console.log(ar) // ob {r1: "R1", r2: 9, r3: 2.718281828459045, r4: {…}, r5: Array(5)} // {…} // r1: "R1" Accessibilité éléments Array - 9/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII // r2: 9 // r3: 2.718281828459045 // r4: Object { 2: "Again", 3: "Hers", R1: "yours", … } // r5: Array(5) [ "Dias", 45, 3.141592653589793, … ] // <prototype>: Object { … } console.log(ar[1]) // undefined console.log(ar.r1) // R1 var r2="r2"; // 9 console.log(ar[r2]) console.log(ar["r3"]) // 2.718281828459045 console.log(ar.r4) // Object { 2: "Again", 3: "Hers", R1: "yours", Abdel: "Name" } // {…} // 2: "Again" // 3: "Hers" // Abdel: "Name" // R1: "yours" // <prototype>: Object { … } console.log(ar["r5"]) // Array(5) [ "Dias", 45, 3.141592653589793, {}, [] ] // (5) […] // 0: "Dias" // 1: 45 // 2: 3.141592653589793 // 3: Object { } // 4: Array [] // length: 5 // <prototype>: Array [] </script> Avec les “keys” ( clés ) : <form class="cName"> <input id="r1" <input class="cR1" <input <input id="r4" name="r1" name="r1" name="r3" name="r4" Accessibilité éléments Array - 10/24 - value=1> value=21> value=3 checked> value=14 checked=true> jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII <input name="r5" value=35 checked=checked> </form> <script> "use strict"; const f = document.querySelector(".cName"), l = f.length; for(let k of f) console.log(k, ` VALUE = ${k.value}, name = ${k.name}, \ class = ${k.class}, id = ${k.id}`) let x; console.log("Mapping : ", x = Object.keys(f).map(k => `name = ${f[k].name}, class = ${f[k].class}, id = ${f[k].id}, *VALUE* = ${f[k].value} `)); console.log("Joining :\n",x.join(" | ")) </script> Accessibilité éléments Array - 11/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII Composition du champ « document . fname » : <form name="fname"> test.html:8:2 form 0: <input name="r1" value="1"> 1: <input name="r1" value="2"> 2: <input name="r3" value="3"> acceptCharset: "" accessKey: "" accessKeyLabel: "" action: "file:///K:/DADET/PROGS/test.html" attributes: NamedNodeMap [ name="fname" ] autocomplete: "on" baseURI: "file:///K:/DADET/PROGS/test.html" childElementCount: 3 childNodes: NodeList(7) [ #text, input, #text, … ] children: HTMLCollection { 0: input, 1: input, length: 3, … } classList: DOMTokenList [] className: "" clientHeight: 66 clientLeft: 0 clientTop: 0 clientWidth: 67 contentEditable: "inherit" Accessibilité éléments Array - 12/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII contextMenu: null dataset: DOMStringMap(0) dir: "" draggable: false elements: HTMLFormControlsCollection { 0: input , 1: input , length: 3, … } encoding: "application/x-www-form-urlencoded" enctype: "application/x-www-form-urlencoded" firstChild: #text " " firstElementChild: <input name="r1" value="1"> hidden: false id: "" innerHTML: "\n <input name=\"r1\" value=\"1\">\n <input name=\"r1\" value=\"2\">\n <input name=\"r3\" value=\"3\">\n " innerText: "" isConnected: true isContentEditable: false lang: "" lastChild: #text " " lastElementChild: <input name="r3" value="3"> length: 3 localName: "form" method: "get" name: "fname" namespaceURI: "http://www.w3.org/1999/xhtml" nextElementSibling: <script> nextSibling: #text "" noValidate: false nodeName: "FORM" nodeType: 1 nodeValue: null offsetHeight: 66 offsetLeft: 8 offsetParent: <body> offsetTop: 8 offsetWidth: 67 onabort: null onanimationcancel: null onanimationend: null onanimationiteration: null onanimationstart: null onauxclick: null Accessibilité éléments Array - 13/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII onblur: null oncanplay: null oncanplaythrough: null onchange: null onclick: null onclose: null oncontextmenu: null oncopy: null oncut: null ondblclick: null ondrag: null ondragend: null ondragenter: null ondragexit: null ondragleave: null ondragover: null ondragstart: null ondrop: null ondurationchange: null onemptied: null onended: null onerror: null onfocus: null ongotpointercapture: null oninput: null oninvalid: null onkeydown: null onkeypress: null onkeyup: null onload: null onloadeddata: null onloadedmetadata: null onloadend: null onloadstart: null onlostpointercapture: null onmousedown: null onmouseenter: null onmouseleave: null onmousemove: null onmouseout: null onmouseover: null onmouseup: null onmozfullscreenchange: null onmozfullscreenerror: null onpaste: null onpause: null onplay: null onplaying: null onpointercancel: null onpointerdown: null Accessibilité éléments Array - 14/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII onpointerenter: null onpointerleave: null onpointermove: null onpointerout: null onpointerover: null onpointerup: null onprogress: null onratechange: null onreset: null onresize: null onscroll: null onseeked: null onseeking: null onselect: null onselectstart: null onshow: null onstalled: null onsubmit: null onsuspend: null ontimeupdate: null ontoggle: null ontransitioncancel: null ontransitionend: null ontransitionrun: null ontransitionstart: null onvolumechange: null onwaiting: null onwebkitanimationend: null onwebkitanimationiteration: null onwebkitanimationstart: null onwebkittransitionend: null onwheel: null outerHTML: "<form name=\"fname\">\n ue=\"1\">\n <input name=\"r1\" name=\"r3\" value=\"3\">\n </form>" <input name=\"r1\" valvalue=\"2\">\n <input ownerDocument: HTMLDocument file:///K:/DADET/PROGS/test.html parentElement: <body> parentNode: <body> prefix: null previousElementSibling: null previousSibling: null scrollHeight: 66 scrollLeft: 0 scrollLeftMax: 0 scrollTop: 0 scrollTopMax: 0 Accessibilité éléments Array - 15/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII scrollWidth: 143 spellcheck: false style: CSS2Properties(0) tabIndex: -1 tagName: "FORM" target: "" textContent: "\n \n title: "" \n \n " <prototype>: HTMLFormElementPrototype { submit: submit(), reset: reset(), checkValidity: checkValidity(), … } Composition de l’élément < input id="r4" name="r4" value="4" checked="true" > : input#r4 accept: "" accessKey: "" accessKeyLabel: "" align: "" alt: "" attributes: NamedNodeMap(4) [ id="r4", name="r4", value="4", … ] autocomplete: "" autofocus: false baseURI: "file:///K:/DADET/PROGS/test.html" checked: true childElementCount: 0 childNodes: NodeList [] children: HTMLCollection { length: 0 } classList: DOMTokenList [] className: "" clientHeight: 20 clientLeft: 0 clientTop: 0 clientWidth: 141 contentEditable: "inherit" contextMenu: null dataset: DOMStringMap(0) defaultChecked: true defaultValue: "4" Accessibilité éléments Array - 16/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII dir: "" disabled: false draggable: false files: null firstChild: null firstElementChild: null form: <form name="fname"> formAction: "file:///K:/DADET/PROGS/test.html" formEnctype: "" formMethod: "" formNoValidate: false formTarget: "" height: 0 hidden: false id: "r4" indeterminate: false innerHTML: "" innerText: "" isConnected: true isContentEditable: false labels: NodeList [] lang: "" lastChild: null lastElementChild: null list: null localName: "input" max: "" maxLength: -1 min: "" minLength: -1 multiple: false name: "r4" namespaceURI: "http://www.w3.org/1999/xhtml" nextElementSibling: <input name="r5" value="5" checked="checked"> nextSibling: #text " nodeName: "INPUT" nodeType: 1 nodeValue: null " offsetHeight: 22 offsetLeft: 8 offsetParent: <body> offsetTop: 74 offsetWidth: 143 Accessibilité éléments Array - 17/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII onabort: null onanimationcancel: null onanimationend: null onanimationiteration: null onanimationstart: null onauxclick: null onblur: null oncanplay: null oncanplaythrough: null onchange: null onclick: null onclose: null oncontextmenu: null oncopy: null oncut: null ondblclick: null ondrag: null ondragend: null ondragenter: null ondragexit: null ondragleave: null ondragover: null ondragstart: null ondrop: null ondurationchange: null onemptied: null onended: null onerror: null onfocus: null ongotpointercapture: null oninput: null oninvalid: null onkeydown: null onkeypress: null onkeyup: null onload: null onloadeddata: null onloadedmetadata: null onloadend: null onloadstart: null onlostpointercapture: null onmousedown: null onmouseenter: null onmouseleave: null onmousemove: null onmouseout: null onmouseover: null onmouseup: null onmozfullscreenchange: null onmozfullscreenerror: null Accessibilité éléments Array - 18/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII onpaste: null onpause: null onplay: null onplaying: null onpointercancel: null onpointerdown: null onpointerenter: null onpointerleave: null onpointermove: null onpointerout: null onpointerover: null onpointerup: null onprogress: null onratechange: null onreset: null onresize: null onscroll: null onseeked: null onseeking: null onselect: null onselectstart: null onshow: null onstalled: null onsubmit: null onsuspend: null ontimeupdate: null ontoggle: null ontransitioncancel: null ontransitionend: null ontransitionrun: null ontransitionstart: null onvolumechange: null onwaiting: null onwebkitanimationend: null onwebkitanimationiteration: null onwebkitanimationstart: null onwebkittransitionend: null onwheel: null outerHTML: "<input checked=\"true\">" id=\"r4\" name=\"r4\" value=\"4\" ownerDocument: HTMLDocument file:///K:/DADET/PROGS/test.html parentElement: <form name="fname"> parentNode: <form name="fname"> pattern: "" placeholder: "" Accessibilité éléments Array - 19/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII prefix: null previousElementSibling: <input name="r3" value="3" checked=""> previousSibling: #text " readOnly: false required: false " scrollHeight: 20 scrollLeft: 0 scrollLeftMax: 0 scrollTop: 0 scrollTopMax: 0 scrollWidth: 141 selectionDirection: "forward" selectionEnd: 0 selectionStart: 0 size: 20 spellcheck: false src: "" step: "" style: CSS2Properties(0) tabIndex: 0 tagName: "INPUT" textContent: "" textLength: 1 title: "" type: "text" useMap: "" validationMessage: "" validity: ValidityState { valueMissing: false, patternMismatch: false, … } false, typeMismatch: value: "4" valueAsDate: null valueAsNumber: NaN webkitEntries: Array [] webkitdirectory: false width: 0 willValidate: true <prototype>: HTMLInputElementPrototype { stepUp: stepUp(), stepDown: stepDown(), checkValidity: checkValidity(), … } Accessibilité éléments Array - 20/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII Mots-clés : fonctions, JavaScript, objets, querySelector, getElemenetById, opérateur new, fonctions fléchées, dont la syntaxe, parseInt, parseFloat, toString, accessibilité, éléments, collection, array, objet, représentation interne, élément, input. DIASOLUKA Nz. Luyalu Docteur en Médecine, Chirurgie & Accouchements (1977), CNOM : 0866 - Spécialiste en ophtalmologie (1980) Études humanités : Scientifique - Mathématiques & Physique. Informaticien-amateur, Programmeur et WebMaster. Chercheur indépendant, autonome et autofinancé, bénévole, sans aucun conflit d’intérêt ou liens d'intérêts ou contrainte promotionnelle avec qui qu’il soit ou quelqu’organisme ou institution / organisation que ce soit, étatique, paraétatique ou privé, industriel ou commercial en relation avec le sujet présenté. +243 - 851278216 - 899508675 - 991239212 - 902263541 - 813572818 [email protected] Autre Lecture : https://www.scribd.com/document/374738470/Le-Plus-Grand-Secret-de-LaCreation Accessibilité éléments Array - 21/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII D’autres publications pouvant aussi intéresser : • https://www.scribd.com/document/377036251/LeDosage-Des-Medicaments-en-Cac-Cas • https://www.scribd.com/document/377035454/LeHasard-Des-Thermometres-Non-contact-a-Infrarouge • https://www.scribd.com/document/376222482/PetiteIntroduction-Aux-Fonctions-JavaScript • https://www.scribd.com/document/376221919/La-Foien-Jesus-Christ-Pour-Quoi-Faire • https://www.scribd.com/document/375689778/Lacuitevisuelle-angulaire • https://www.scribd.com/document/375349851/Lavariable-This • https://www.scribd.com/document/375024162/FonctionsImbriquees-en-JS • https://www.scribd.com/document/374789297/FormatInterne-Des-Objets-JavaScript • https://www.scribd.com/document/374788758/Iterationsen-JavaScript • https://www.scribd.com/document/374738470/Le-PlusGrand-Secret-de-La-Creation • https://www.scribd.com/document/374597969/NouvelleFormule-d-IMC-indice-de-doduite-Selon-Dr-Diasoluka • https://www.scribd.com/document/373847209/PropertyDescriptors • https://www.scribd.com/document/373833282/l-ObjetAccessibilité éléments Array - 22/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII Global-Window • https://www.scribd.com/document/372665249/JavascriptTome-II • https://www.scribd.com/document/355291488/motiliteoculaire-2 • https://www.scribd.com/document/355291239/motiliteoculaire-I • https://www.scribd.com/document/355290248/Script-dAnalyses-Des-Reflexes-Pupillomoteurs • https://www.scribd.com/document/321168468/Renseigne ments-Id-et-Anthropometriques • https://www.scribd.com/document/320856721/Emission31-Jul-2016 • https://www.scribd.com/document/318182982/Complicati on-Visuelle-du-Traitement-de-La-Malaria • https://www.scribd.com/document/318180637/RapportEntre-Oxymetrie-Et-Type-Respiration • https://www.scribd.com/document/315746265/Classificati on-Des-Medicaments • https://www.scribd.com/document/315745909/Incongruen ces-Heresies-et-Heterodoxies-de-la-Notion-deLaboratoire • https://www.scribd.com/document/315745725/RapportAccessibilité éléments Array - 23/24 - jeudi, 4. avril 2019 (10:43 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXII Entre-Oxymetrie-Et-Type-Respiration Accessibilité éléments Array - 24/24 - jeudi, 4. avril 2019 (10:43 )