javascript tome xxii - L'objet String

Transcription

javascript tome xxii - L'objet String
L’OBJET STRING
Pour Débutant
J A V A S C R I P T (Programmation Internet) V O L . V I
J.B. Dadet DIASOLUKA Luyalu Nzoyifuanga
+243 - 851278216 - 899508675 - 991239212 - 902263541 - 813572818
CHAPITRE 12 : L’OBJET STRING :
Littéraux de gabarits
Depuis ECMAScript 2015, les littéraux de chaînes de caractères
sont également appelés des littéraux de gabarits :
`En une seule ligne`
`En lignes !
découpées !`
`Avec ${variable}`
escape `<a>${texte}</a>`
Échappement des caractères (caractères spéciaux vs caractères
classiques) :
Code Résultat
\0
le caractère NUL
\'
simple quote
\"
double quote
\\
barre oblique inversée
\n
nouvelle ligne
\r
retour chariot
\v
tabulation verticale
J.D.B. DIASOLUKA Nz. Luyalu
\t
\b
\f
\uXXXX
\xXX
JavaScript Tome-VI
tabulation
retour arrière
saut de page (form feed)
point de code Unicode
caractère Latin-1
Il ne faut pas confondre le caractère NUL (\0) et le type null ou le
void ou l’undefined.
Littéraux pour les chaînes longues
ou
Comment « casser » les chaînes longues.
Il existe plusieurs possibilités :
1. Les concatener avec des chaînes courtes.
let chaîneScindée = "Une longue chaîne " +
"scindée en plusieurs " +
" courtes chaînes.";
2. Terminer la ligne avec le caractère "\" (barre oblique inversée)
sans guillemets [double = double quotes (") ou simple =
simple quotes (')] à la fin de la ligne.
let chaîneScindée = "Une longue chaîne \
sciendée en plusieurs \
Courtes chaînes.";
3. Littéraux de gabarits : reproduit la ligne telle que saisie.
Variables & Functions
- 2 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
Remarque :
Avec « document.write » une suite continue d’espaces multiples
est résolu en un seul espace, tandis que
« window.alert » et « console.log » respectent (conservent) tous
les espaces dans la chaîne.
Avec les Littéraux de gabarits (Template literals), « window.alert » et « console.log » respectent (conservent) aussi toute
la forme du texte.
Avec console.log :
<script type="text/javascript"> "use strict";
let chaîneScindée;
chaîneScindée = "Une longue chaîne " +
"scindée en " +
"plusieurs courtes chaînes" +
"sur plusieurs lignes.";
console.log(chaîneScindée);
//Une longue chaîne scindée en plusieurs courtes chaînessur plusieurs lignes.
chaîneScindée = "Une longue chaîne ordinaire\
étalée sur plusieurs\
lignes avec respect des espaces.";
console.log(chaîneScindée);
// Une longue chaîne ordinaire
étalée
sur plusieurs
lignes avec respect des
espaces.
chaîneScindée = `Une longue chaîne
étalée sur plusieurs lignes
(${Math.pow(243,1/5)}) respect des espaces.`;
console.log(chaîneScindée);
// Une longue chaîne
// étalée sur plusieurs lignes
Variables & Functions
- 3 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
// (3) respect des espaces.
</script>
Avec alert :
<script type="text/javascript"> "use strict";
let chaîneScindée;
chaîneScindée = "Une longue chaîne " +
"scindée en " +
"
plusieurs " +
" courtes chaînes.<br>";
window.alert(chaîneScindée);
chaîneScindée = "Une longue chaîne \
scindée en plusieurs \
courtes chaînes.<br>";
alert(chaîneScindée);
chaîneScindée = `Une longue chaîne
scindée en plusieurs
courtes chaînes.<br>`;
window.alert(chaîneScindée);
</script>
Une longue chaîne scindée en
chaînes.<br>
Une longue chaîne
sieurs
plusieurs
courtes
scindée en plucourtes chaînes.<br>
Une longue chaîne
scindée en plusieurs
courtes chaînes.<br>
Avec document.write :
<script type="text/javascript"> "use strict";
let chaîneScindée;
chaîneScindée = "Une longue chaîne " +
"scindée en " +
"
plusieurs " +
" courtes chaînes.<br>";
document.write(chaîneScindée);
/* Une longue chaîne scindée en plusieurs courtes chaînes.
*/
Variables & Functions
- 4 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
chaîneScindée = "Une longue chaîne \
scindée en plusieurs \
courtes chaînes.<br>";
document.write(chaîneScindée);
/* Une longue chaîne scindée en plusieurs courtes chaînes.
*/
chaîneScindée = `Une longue chaîne
scindée en plusieurs
(${Math.pow(27,1/3)}) courtes chaînes.<br>`;
document.write(chaîneScindée);
/* Une longue chaîne scindée en plusieurs (3) courtes
chaînes. */
</script>
Un objet String est en fait, à l’instar des Arrays, un objet dont les
clés des propriétés sont successivement numérotées de 0 jusqu’à
la taille de la chaîne moins 1, chacune ayant comme [[value]], de
façon ordonnée un caractère de la chaîne. Il comporte aussi une
propriété dont la clé est « length » et qui contient la longueur de
(nombre de caractères dans) la chaîne, et un pointeur sur le prototype du constructeur de son parent/constructeur.
La méthode « String.valueOf » permet de restituer ce semblant
d’rray de propriétés sous forme d’une chaîne primitive.
<script type="text/javascript"> "use strict";
const placeholder="PLH=";
let sl=new String(`${placeholder}littéral de chaîne`);
console.log(Object.getOwnPropertyDescriptors(sl));
console.log(sl.valueOf());
let os=new String("chaîne ordinaire");
console.log(Object.getOwnPropertyDescriptors(os));
console.log(os.valueOf());
let ar=new String("chaîne array");
console.log(Object.getOwnPropertyDescriptors(ar));
Variables & Functions
- 5 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
console.log(ar.valueOf());
</script>
Exécution avec Yandex :
Variables & Functions
- 6 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
Exécution avec Firefox :
Variables & Functions
- 7 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
Variables & Functions
- 8 / 13 -
JavaScript Tome-VI
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
Avec « console.log() » et « alert() », pour renvoyer à la ligne suivante la suite d’une longue chaîne, on utilise l’échappement
« \n » :
<script type="text/javascript"> "use strict";
alert(`une ligne\ndeuxième ligne`);
console.log(`une ligne\ndeuxième ligne`);
</script>
Variables & Functions
- 9 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
Avec « document.write() », on utilise la balise ouverte « <br> »
ou mieux « <br /> » :
<script type="text/javascript"> "use strict";
document.write(`une ligne<br>deuxième ligne`);
</script>
Kinshasa, le 4 avril 2019 (10:46:23 PM).
Mots-clés :
OBJET STRING, Template literals, Littéraux de gabarits, Littéraux
de chaînes, Littérale de gabarits, Littérale de chaînes,
ECMAScript, Échappement des caractères, caractères spéciaux ,
Variables & Functions
- 10 / 13 - jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
caractères classiques, caractère NUL, void, chaînes longues,
chaînes courtes, double quotes, simple quotes, document.write , console.log, objet String , Arrays, pointeur, valueOf, chaîne primitive, balise ouverte, balise, javascript,
ecmascript
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-GrandSecret-de-La-Creation
D’autres publications pouvant aussi intéresser :
• https://www.scribd.com/document/377036251/Le-Dosage-DesVariables & Functions
- 11 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
Medicaments-en-Cac-Cas
• https://www.scribd.com/document/377035454/Le-Hasard-DesThermometres-Non-contact-a-Infrarouge
• https://www.scribd.com/document/376222482/Petite-IntroductionAux-Fonctions-JavaScript
• https://www.scribd.com/document/376221919/La-Foi-en-JesusChrist-Pour-Quoi-Faire
• https://www.scribd.com/document/375689778/Lacuite-visuelleangulaire
• https://www.scribd.com/document/375349851/La-variable-This
• https://www.scribd.com/document/375024162/FonctionsImbriquees-en-JS
• https://www.scribd.com/document/374789297/Format-InterneDes-Objets-JavaScript
• https://www.scribd.com/document/374788758/Iterations-enJavaScript
• https://www.scribd.com/document/374738470/Le-Plus-GrandSecret-de-La-Creation
• https://www.scribd.com/document/374597969/Nouvelle-Formuled-IMC-indice-de-doduite-Selon-Dr-Diasoluka
• https://www.scribd.com/document/373847209/PropertyDescriptors
• https://www.scribd.com/document/373833282/l-Objet-GlobalWindow
• https://www.scribd.com/document/372665249/Javascript-Tome-II
• https://www.scribd.com/document/355291488/motilite-oculaire-2
• https://www.scribd.com/document/355291239/motilite-oculaire-I
• https://www.scribd.com/document/355290248/Script-d-AnalysesDes-Reflexes-Pupillomoteurs
• https://www.scribd.com/document/321168468/Renseignements-Idet-Anthropometriques
• https://www.scribd.com/document/320856721/Emission-31-JulVariables & Functions
- 12 / 13 -
jeudi, 4. avril 2019 (10:46 )
J.D.B. DIASOLUKA Nz. Luyalu
JavaScript Tome-VI
2016
• https://www.scribd.com/document/318182982/ComplicationVisuelle-du-Traitement-de-La-Malaria
• https://www.scribd.com/document/318180637/Rapport-EntreOxymetrie-Et-Type-Respiration
• https://www.scribd.com/document/315746265/Classification-DesMedicaments
• https://www.scribd.com/document/315745909/IncongruencesHeresies-et-Heterodoxies-de-la-Notion-de-Laboratoire
• https://www.scribd.com/document/315745725/Rapport-EntreOxymetrie-Et-Type-Respiration
Variables & Functions
- 13 / 13 -
jeudi, 4. avril 2019 (10:46 )