objet Image
Transcription
objet Image
L’ O b j e t I m a g e J AVA S C R I P T (Programmation Internet) V O L . X X I I I J.B. Dadet DIASOLUKA Luyalu Nzoyifuanga +243 - 851278216 - 899508675 - 995624714 - 902263541 - 813572818 [email protected] INTRODUCTION : Les images constituent un des éléments HTML si pas le plus utilisé en programmation Web. En passant, voici les propriétés propres de l’objet Image. Pour exploiter à fond cet objet (Image), il faut, comme avec tout autre objet, connaître ses propriétés (attributs). Il n’est pas nécessaire de les connaître par cœur, il suffit de les lister au moment où on en a besoin, par exemple avec les commandes ci-dessous : console.dir(Object.getOwnPropertyDescriptors(Image)) Object arguments: { value: null, writable: false, enumerable: false, configurable: false} caller: { value: null, writable: false, enumerable: false, configurable: false} length: { value: 0, writable: false, enumerable: false, configurable: true} name: { value: "Image", writable: false, enumerable: false, configurable: true} prototype: { value: HTMLImageElement, writable: true, enumerable: false, configurable: false} __proto__: Object Comme on le voit avec la valeur de « length=0 », le constructeur de l’objet Image ne reçoit aucun paramètre. Comme on le voit aussi le constructeur de l’objet Image ne comporte rien des propriétés utiles de l’objet Image. Même le constructeur (le parent direct) de l’objet Image ne comporte rien comme propriétés propres. J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII Image.constructor Function() length: 1 name: "Function" __proto__: function () Toutes les propriétés utiles de l’objet Image sont contenues dans les prototypes. Le prototype du constructeur de l’objet Image comporte les attributs parmi les plus utilisés de l’objet Image, dont align, alt, border, height, width, name, src… En voici d’autres. Voici donc les propriétés de l’objet Image.__proto__ que vous pouvez utiliser avec l’objet image (avec Yandex) : console.dir(Object.getOwnPropertyDescriptors(Image.__proto__)) Object align: {get: ƒ, set: ƒ, enumerable: true, configurable: true} alt: {get: ƒ, set: ƒ, enumerable: true, configurable: true} border: {get: ƒ, set: ƒ, enumerable: true, configurable: true} complete: {get: ƒ, set: undefined, enumerable: true, configurable: true} constructor: {value: ƒ, writable: true, enumerable: false, configurable: true} crossOrigin: {get: ƒ, set: ƒ, enumerable: true, configurable: true} currentSrc: {get: ƒ, set: undefined, enumerable: true, configurable: true} decode: {value: ƒ, writable: true, enumerable: true, configurable: true} decoding: {get: ƒ, set: ƒ, enumerable: true, configurable: true} height: {get: ƒ, set: ƒ, enumerable: true, configurable: true} hspace: {get: ƒ, set: ƒ, enumerable: true, configurable: true} isMap: {get: ƒ, set: ƒ, enumerable: true, configurable: true} longDesc: {get: ƒ, set: ƒ, enumerable: true, configurable: true} lowsrc: {get: ƒ, set: ƒ, enumerable: true, configurable: true} name: {get: ƒ, set: ƒ, enumerable: true, configurable: true} naturalHeight: {get: ƒ, set: undefined, enumerable: true, configurable: true} naturalWidth: {get: ƒ, set: undefined, enumerable: true, Promesse (Promise) - 2 / 10 - jeudi, 4. avril 2019 (10:51 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII configurable: true} referrerPolicy: {get: ƒ, set: ƒ, enumerable: true, configurable: true} sizes: {get: ƒ, set: ƒ, enumerable: true, configurable: true} src: {get: ƒ, set: ƒ, enumerable: true, configurable: true} srcset: {get: ƒ, set: ƒ, enumerable: true, configurable: true} useMap: {get: ƒ, set: ƒ, enumerable: true, configurable: true} vspace: {get: ƒ, set: ƒ, enumerable: true, configurable: true} width: {get: ƒ, set: ƒ, enumerable: true, configurable: true} x: {get: ƒ, set: undefined, enumerable: true, configurable: true} y: {get: ƒ, set: undefined, enumerable: true, configurable: true} Symbol(Symbol.toStringTag): {value: "HTMLImageElement", writable: false, enumerable: false, configurable: true} __proto__: Object Les propriétés de l’objet Image.__proto__ que vous pouvez utiliser avec l’objet image (avec Firefox) : Object { toSource: {…}, toString: {…}, apply: {…}, call: {…}, bind: {…}, arguments: {…}, caller: {…}, constructor: {…}, length: {…}, name: {…}, … } {…} apply: Object { writable: true, enumerable: false, configurable: true, … } arguments: Object { get: arguments(), enumerable: false, configurable: true, … } bind: Object { writable: true, enumerable: false, configurable: true, … } call: Object { writable: true, enumerable: false, configurable: true, … } caller: Object { get: caller(), enumerable: false, configurable: true, … } constructor: Object { writable: true, enumerable: false, configurable: true, … } length: Object { value: 0, writable: false, enumerable: false, … } name: Object { writable: false, enumerable: false, configurable: true, … } Promesse (Promise) - 3 / 10 - jeudi, 4. avril 2019 (10:51 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII toSource: Object { writable: true, enumerable: false, configurable: true, … } toString: Object { writable: true, enumerable: false, configurable: true, … } Symbol(Symbol.hasInstance): Object { writable: false, enumerable: false, configurable: false, … } __proto__: Object { … } Et le prototype direct de l’objet Image comporte : Avec Firefox : Image() length: 0 name: "Image" prototype: HTMLImageElementPrototype align: Getter & Setter alt: Getter & Setter border: Getter & Setter complete: Getter constructor: function () crossOrigin: Getter & Setter currentSrc: Getter height: Getter & Setter hspace: Getter & Setter isMap: Getter & Setter longDesc: Getter & Setter lowsrc: Getter & Setter name: Getter & Setter naturalHeight: Getter naturalWidth: Getter referrerPolicy: Getter & Setter sizes: Getter & Setter src: Getter & Setter srcset: Getter & Setter useMap: Getter & Setter vspace: Getter & Setter width: Getter & Setter x: Getter y: Getter __proto__: HTMLElementPrototype { click: click(), focus: focus(), blur: blur(), … } __proto__: function () Promesse (Promise) - 4 / 10 - jeudi, 4. avril 2019 (10:51 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII Avec Yandex : Image.prototype HTMLImageElement {…} accessKey:(...) align:(...) alt:(...) assignedSlot:(...) attributeStyleMap:(...) attributes:(...) autocapitalize:(...) baseURI:(...) border:(...) childElementCount:(...) childNodes:(...) children:(...) classList:(...) className:(...) clientHeight:(...) clientLeft:(...) clientTop:(...) clientWidth:(...) complete:(...) contentEditable:(...) crossOrigin:(...) currentSrc:(...) dataset:(...) decode:ƒ decode() decoding:(...) dir:(...) draggable:(...) firstChild:(...) firstElementChild:(...) height:(...) hidden:(...) hspace:(...) id:(...) innerHTML:(...) innerText:(...) inputMode:(...) isConnected:(...) isContentEditable:(...) isMap:(...) lang:(...) lastChild:(...) lastElementChild:(...) localName:(...) longDesc:(...) Promesse (Promise) - 5 / 10 - jeudi, 4. avril 2019 (10:51 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII lowsrc:(...) name:(...) namespaceURI:(...) naturalHeight:(...) naturalWidth:(...) nextElementSibling:(...) nextSibling:(...) nodeName:(...) nodeType:(...) nodeValue:(...) nonce:(...) offsetHeight:(...) offsetLeft:(...) offsetParent:(...) offsetTop:(...) offsetWidth:(...) onabort:(...) onauxclick:(...) onbeforecopy:(...) onbeforecut:(...) onbeforepaste:(...) onblur:(...) oncancel:(...) oncanplay:(...) oncanplaythrough:(...) onchange:(...) onclick:(...) onclose:(...) oncontextmenu:(...) oncopy:(...) oncuechange:(...) oncut:(...) ondblclick:(...) ondrag:(...) ondragend:(...) ondragenter:(...) ondragleave:(...) ondragover:(...) ondragstart:(...) ondrop:(...) ondurationchange:(...) onemptied:(...) onended:(...) onerror:(...) onfocus:(...) ongotpointercapture:(...) oninput:(...) oninvalid:(...) onkeydown:(...) onkeypress:(...) Promesse (Promise) - 6 / 10 - jeudi, 4. avril 2019 (10:51 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII onkeyup:(...) onload:(...) onloadeddata:(...) onloadedmetadata:(...) onloadstart:(...) onlostpointercapture:(...) onmousedown:(...) onmouseenter:(...) onmouseleave:(...) onmousemove:(...) onmouseout:(...) onmouseover:(...) onmouseup:(...) onmousewheel:(...) onpaste:(...) onpause:(...) onplay:(...) onplaying:(...) onpointercancel:(...) onpointerdown:(...) onpointerenter:(...) onpointerleave:(...) onpointermove:(...) onpointerout:(...) onpointerover:(...) onpointerup:(...) onprogress:(...) onratechange:(...) onreset:(...) onresize:(...) onscroll:(...) onsearch:(...) onseeked:(...) onseeking:(...) onselect:(...) onselectstart:(...) onstalled:(...) onsubmit:(...) onsuspend:(...) ontimeupdate:(...) ontoggle:(...) onvolumechange:(...) onwaiting:(...) onwebkitfullscreenchange:(...) onwebkitfullscreenerror:(...) onwheel:(...) outerHTML:(...) outerText:(...) ownerDocument:(...) parentElement:(...) Promesse (Promise) - 7 / 10 - jeudi, 4. avril 2019 (10:51 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII parentNode:(...) prefix:(...) previousElementSibling:(...) previousSibling:(...) referrerPolicy:(...) scrollHeight:(...) scrollLeft:(...) scrollTop:(...) scrollWidth:(...) shadowRoot:(...) sizes:(...) slot:(...) spellcheck:(...) src:(...) srcset:(...) style:(...) tabIndex:(...) tagName:(...) textContent:(...) title:(...) translate:(...) useMap:(...) vspace:(...) width:(...) x:(...) y:(...) constructor:ƒ HTMLImageElement() Symbol(Symbol.toStringTag):"HTMLImageElement" get align:ƒ () set align:ƒ () get alt:ƒ () set alt:ƒ () get border:ƒ () set border:ƒ () get complete:ƒ () get crossOrigin:ƒ () set crossOrigin:ƒ () get currentSrc:ƒ () get decoding:ƒ () set decoding:ƒ () get height:ƒ () set height:ƒ () get hspace:ƒ () set hspace:ƒ () get isMap:ƒ () set isMap:ƒ () get longDesc:ƒ () set longDesc:ƒ () get lowsrc:ƒ () Promesse (Promise) - 8 / 10 - jeudi, 4. avril 2019 (10:51 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII set lowsrc:ƒ () get name:ƒ () set name:ƒ () get naturalHeight:ƒ () get naturalWidth:ƒ () get referrerPolicy:ƒ () set referrerPolicy:ƒ () get sizes:ƒ () set sizes:ƒ () get src:ƒ () set src:ƒ () get srcset:ƒ () set srcset:ƒ () get useMap:ƒ () set useMap:ƒ () get vspace:ƒ () set vspace:ƒ () get width:ƒ () set width:ƒ () get x:ƒ () get y:ƒ () __proto__:HTMLElement Mots-clés : Promise, Promise.all, Promise.race, Promise.reject, Promise.resolve, promise.catch, resolve, reject, fulfilled, rejected, pending, settled, tâche, asynchrone, réussite, échec, multithreading, Javascript, curryng, fonction englobante, fonction imbriquée, opération, fonction, ECMA. Promesse (Promise) - 9 / 10 - jeudi, 4. avril 2019 (10:51 ) J.D.B. DIASOLUKA Nz. Luyalu JavaScript Tome-XXIII 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] Promesse (Promise) - 10 / 10 - jeudi, 4. avril 2019 (10:51 )