String

  • Raccourci de la révision : JavaScript/Référence_JavaScript/Référence_JavaScript/Objets_globaux/String
  • Titre de la révision : String
  • ID de la révision : 281876
  • Créé :
  • Créateur : Kyodev
  • Version actuelle ? Non
  • Commentaire statut à relire oublié

Contenu de la révision

Résumé

Objet Core

Un objet représentant une série de caractères dans une chaîne.

Création

À l'aide du constructeur d'objets String :

new String(chaîne)

Paramètres

chaîne 
n'importe quelle chaîne de caractères.

Description

Les objets String sont créés en appelant le constructeur new String() :

s_obj = new String("foo"); // crée un objet String

L'objet String encapsule le type de données primitif string de JavaScript en fournissant les méthodes décrites plus bas. La fonction globale String() peut également être appelée sans l'opérateur new pour créer une chaîne primitive :

s_prim = String("bar"); // crée une chaîne primitive

Les chaînes littérales dans le code JavaScript forment des chaînes primitives :

s_also_prim = "foo"; // crée une chaîne primitive

Étant donné que JavaScript effectue automatiquement les conversions entre chaînes primitives et objets String, toute méthode de l'objet String peut être appelée sur une chaîne primitive. JavaScript convertira automatiquement la chaîne en un objet String temporaire, appellera la méthode, puis détruira l'objet temporaire. Par exemple, on peut utiliser la propriété String.length sur une chaîne créée de manière littérale :

s_obj.length;       // 3
s_prim.length;      // 3
s_also_prim.length; // 3
'foo'.length;       // 3
"foo".length;       // 3

(Une chaîne littérale peut être délimitée par des guillemets simples ou doubles.)

Les objets String peuvent être convertis en chaînes primitives à l'aide de String.valueOf().

Les chaînes primitives et les objets String renvoient des résultats différents lorsqu'ils sont évalués en JavaScript. Les chaînes primitives sont traitées comme du code source, tandis que les objets String sont traités comme un objet de séquence de caractères. Par exemple :

s1 = "2 + 2" // crée une chaîne primitive
s2 = new String("2 + 2") // crée un objet String
eval(s1)     // renvoie le nombre 4
eval(s2)     // renvoie la chaîne "2 + 2"
eval(s2.valueOf()); // renvoie le nombre 4

La valeur de n'importe quel objet peut être convertie en une chaîne à l'aide de la fonction globale String.

Accès à des caractères individuels dans une chaîne

Deux manières d'accéder à un caractère individuel dans une chaîne existent. La première est la méthode charAt  :

'cat'.charAt(1) // renvoie "a"

La seconde manière est de traiter la chaîne comme s'il s'agissait d'un tableau, avec chaque indice correspondant à un caractère particulier :

'cat'[1] // renvoie "a"

Note : la seconde manière (traiter une chaîne comme un tableau) ne fait pas partie de la spécification ECMAScript, c'est une fonctionnalité de JavaScript.

Dans les deux cas, il ne sera pas possible de modifier un caractère existant. Si l'on essaie de modifier un caractère via charAt, on obtient une erreur :

var x = 'cat';
x.charAt(0) = 'b'; // erreur

Si l'on utilise la méthode du tableau, aucune erreur n'est provoquée, mais la chaîne elle-même ne change pas :

var x = 'cat';
x[2] = 'p';
alert(x);    // affiche toujours 'cat'
alert(x[2]); // affiche toujours 't'

Comparaison de chaînes

Les développeurs C connaissent la fonction strcmp() pour comparer des chaînes. En JavaScript, on utilisera simplement les opérateurs de comparaison classiques :

var a = "a";
var b = "b";
if (a < b) // true
    document.write(a + " est inférieur à " + b);
else if (a > b)
    document.write(a + " est supérieur à " + b);
else
    document.write(a + " et " + b + " sont égaux.");

Propriétés

  • constructor : spécifie la fonction de création du prototype d'un objet String.
  • length : reflète la longueur de la chaîne.
  • prototype : permet d'ajouter des propriétés à tous les objets String.

Méthodes statiques

  • fromCharCode : renvoie une chaîne créée en utilisant la séquence de valeurs Unicode fournie.

Méthodes

Méthodes non liées à HTML

  • charAt : renvoie le caractère se trouvant à l'indice spécifié.
  • charCodeAt : renvoie un nombre indiquant la valeur Unicode du caractère se trouvant à l'indice spécifié.
  • concat : renvoie une nouvelle chaîne combinant le texte de deux chaînes.
  • indexOf : renvoie l'indice de la première occurrence de la valeur spécifiée au sein de l'objet String, ou -1 si elle n'est pas trouvée.
  • lastIndexOf : renvoie l'indice de la dernière occurrence de la valeur spécifiée au sein de l'objet String, ou -1 si elle n'est pas trouvée.
  • match : utilisée pour vérifier une expression rationnelle.
  • replace : utilisée pour trouver une correspondance entre une expression rationnelle et une chaîne, et pour remplacer la correspondance avec une nouvelle sous-chaîne.
  • search : exécute la recherche d'une correspondance entre une expression rationnelle et une chaîne.
  • slice : renvoie une nouvelle chaîne correspondant à l'extraction d'une section d'une chaîne.
  • split : sépare un objet String en un tableau de sous-chaînes.
  • substr : renvoie un certain nombre de caractères d'une chaîne à partir de la position spécifiée.
  • substring : renvoie les caractères situées entre deux indices dans une chaîne.
  • toLowerCase : renvoie la chaîne convertie en minuscules.
  • toSource : renvoie une définition littérale d'objet représentant l'objet spécifié. Cette valeur peut être utilisée pour créer un nouvel objet. Remplace la méthode Object.toSource.
  • toString : renvoie une chaîne représentant l'objet spécifié. Remplace la méthode Object.toString.
  • toUpperCase : renvoie la chaîne convertie en majuscules.
  • valueOf : renvoie la valeur primitive de l'objet spécifié. Remplace la méthode Object.valueOf.

Méthodes liées à HTML

Chacune des méthodes suivantes renvoie une copie de la chaîne encadrée de balises HTML ouvrantes et fermantes. Par exemple, "test".bold() renvoie "<b>test</b>".

Ces méthodes sont relativement peu utiles, étant donné qu'elles ne fournissent qu'un petit sous-ensemble des balises et attributs HTML existants.

Exemples

Exemple : chaîne primitive

L'instruction suivante crée une chaîne primitive depuis la chaîne littérale "Schaefer" et l'assigne à la variable nom_de_famille :

var nom_de_famille = "Schaefer";

Exemple : propriétés d'une chaîne primitive

Les expressions suivantes seront évaluées respectivement à 8, "SCHAEFER" et "schaefer" :

nom_de_famille.length
nom_de_famille.toUpperCase()
nom_de_famille.toLowerCase()

Exemple : remplacement d'un caractère dans une chaîne

Un caractère individuel ne peut pas directement être modifié dans une chaîne. Il faut, à la place, créer une nouvelle chaîne à l'aide des méthodes substr ou substring :

function setCharAt(str, index, ch) {
   return str.substr(0, index) + ch + str.substr(index + 1);
}

alert(setCharAt('scam', 1, 'p')); // affiche "spam"

Exemple : passage d'une chaîne entre des scripts de fenêtres ou cadres différents

Le code suivant crée deux variables chaînes et ouvre une seconde fenêtre :

var nom = "Schaefer";
var prenom = "Jesse";
fenetre_emp = window.open('string2.html', 'window1', 'width=300,height=300');

Si le code de la seconde fenêtre (string2.html) crée deux variables chaîne, empNom et empPrenom, le code suivant dans la première fenêtre assignera des valeurs à ces variables :

fenetre_emp.empPrenom = prenom;
fenetre_emp.empNom = nom;

Le code suivant dans la première fenêtre affiche les valeurs des variables de la seconde fenêtre :

alert('empPrenom dans fenetre_emp vaut ' + fenetre_emp.empPrenom);
alert('empNom dans fenetre_emp vaut ' + fenetre_emp.empNom);
{{ wiki.languages( { "en": "en/Core_JavaScript_1.5_Reference/Global_Objects/String", "ja": "ja/Core_JavaScript_1.5_Reference/Global_Objects/String", "pl": "pl/Dokumentacja_j\u0119zyka_JavaScript_1.5/Obiekty/String" } ) }}

Source de la révision

<p>
</p>
<h3 name="R.C3.A9sum.C3.A9"> Résumé </h3>
<p><b>Objet Core</b>
</p><p>Un objet représentant une série de caractères dans une chaîne.
</p>
<h3 name="Cr.C3.A9ation"> Création </h3>
<p>À l'aide du constructeur d'objets <code>String</code> :
</p>
<pre class="eval">new String(<i>chaîne</i>)
</pre>
<h3 name="Param.C3.A8tres"> Paramètres </h3>
<dl><dt> <code>chaîne</code> </dt><dd> n'importe quelle chaîne de caractères.
</dd></dl>
<h3 name="Description"> Description </h3>
<p>Les objets String sont créés en appelant le constructeur <code>new String()</code> :
</p>
<pre class="eval">s_obj = new String("foo"); // crée un objet String
</pre>
<p>L'objet <code>String</code> encapsule le type de données primitif string de JavaScript en fournissant les méthodes décrites plus bas. La fonction globale <code>String()</code> peut également être appelée sans l'opérateur <code>new</code> pour créer une chaîne primitive :
</p>
<pre class="eval">s_prim = String("bar"); // crée une chaîne primitive
</pre>
<p>Les chaînes littérales dans le code JavaScript forment des chaînes primitives :
</p>
<pre class="eval">s_also_prim = "foo"; // crée une chaîne primitive
</pre>
<p>Étant donné que JavaScript effectue automatiquement les conversions entre chaînes primitives et objets String, toute méthode de l'objet <code>String</code> peut être appelée sur une chaîne primitive. JavaScript convertira automatiquement la chaîne en un objet <code>String</code> temporaire, appellera la méthode, puis détruira l'objet temporaire. Par exemple, on peut utiliser la propriété <code>String.length</code> sur une chaîne créée de manière littérale :
</p>
<pre class="eval">s_obj.length;       // 3
s_prim.length;      // 3
s_also_prim.length; // 3
'foo'.length;       // 3
"foo".length;       // 3
</pre>
<p>(Une chaîne littérale peut être délimitée par des guillemets simples ou doubles.) 
</p><p>Les objets String peuvent être convertis en chaînes primitives à l'aide de <code>String.valueOf()</code>.
</p><p>Les chaînes primitives et les objets String renvoient des résultats différents lorsqu'ils sont évalués en JavaScript. Les chaînes primitives sont traitées comme du code source, tandis que les objets String sont traités comme un objet de séquence de caractères. Par exemple :
</p>
<pre class="eval">s1 = "2 + 2" // crée une chaîne primitive
s2 = new String("2 + 2") // crée un objet String
eval(s1)     // renvoie le nombre 4
eval(s2)     // renvoie la chaîne "2 + 2"
eval(s2.valueOf()); // renvoie le nombre 4
</pre>
<p>La valeur de n'importe quel objet peut être convertie en une chaîne à l'aide de la fonction globale <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Fonctions/String">String</a>.
</p>
<h4 name="Acc.C3.A8s_.C3.A0_des_caract.C3.A8res_individuels_dans_une_cha.C3.AEne"> Accès à des caractères individuels dans une chaîne </h4>
<p>Deux manières d'accéder à un caractère individuel dans une chaîne existent. La première est la méthode <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/charAt">charAt</a>  :
</p>
<pre class="eval">'cat'.charAt(1) // renvoie "a"
</pre>
<p>La seconde manière est de traiter la chaîne comme s'il s'agissait d'un tableau, avec chaque indice correspondant à un caractère particulier :
</p>
<pre class="eval">'cat'[1] // renvoie "a"
</pre>
<p>Note : la seconde manière (traiter une chaîne comme un tableau) ne fait pas partie de la spécification ECMAScript, c'est une fonctionnalité de JavaScript.
</p><p>Dans les deux cas, il ne sera pas possible de modifier un caractère existant. Si l'on essaie de modifier un caractère via <code>charAt</code>, on obtient une erreur :
</p>
<pre class="eval">var x = 'cat';
x.charAt(0) = 'b'; // erreur
</pre>
<p>Si l'on utilise la méthode du tableau, aucune erreur n'est provoquée, mais la chaîne elle-même ne change pas :
</p>
<pre class="eval">var x = 'cat';
x[2] = 'p';
alert(x);    // affiche toujours 'cat'
alert(x[2]); // affiche toujours 't'
</pre>
<h4 name="Comparaison_de_cha.C3.AEnes"> Comparaison de chaînes </h4>
<p>Les développeurs C connaissent la fonction <code>strcmp()</code> pour comparer des chaînes. En JavaScript, on utilisera simplement les opérateurs de comparaison classiques :
</p>
<pre class="eval">var a = "a";
var b = "b";
if (a &lt; b) // true
    document.write(a + " est inférieur à " + b);
else if (a &gt; b)
    document.write(a + " est supérieur à " + b);
else
    document.write(a + " et " + b + " sont égaux.");
</pre>
<h3 name="Propri.C3.A9t.C3.A9s"> Propriétés </h3>
<ul><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/constructor">constructor</a> : spécifie la fonction de création du prototype d'un objet <code>String</code>.  
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/length">length</a> : reflète la longueur de la chaîne.  
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/prototype">prototype</a> : permet d'ajouter des propriétés à tous les objets <code>String</code>.
</li></ul>
<h3 name="M.C3.A9thodes_statiques"> Méthodes statiques </h3>
<ul><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/fromCharCode">fromCharCode</a> : renvoie une chaîne créée en utilisant la séquence de valeurs Unicode fournie.
</li></ul>
<h3 name="M.C3.A9thodes"> Méthodes </h3>
<h4 name="M.C3.A9thodes_non_li.C3.A9es_.C3.A0_HTML"> Méthodes non liées à HTML </h4>
<ul><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/charAt">charAt</a> : renvoie le caractère se trouvant à l'indice spécifié.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/charCodeAt">charCodeAt</a> : renvoie un nombre indiquant la valeur Unicode du caractère se trouvant à l'indice spécifié.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/concat">concat</a> : renvoie une nouvelle chaîne combinant le texte de deux chaînes.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/indexOf">indexOf</a> : renvoie l'indice de la première occurrence de la valeur spécifiée au sein de l'objet String, ou -1 si elle n'est pas trouvée.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/lastIndexOf">lastIndexOf</a> : renvoie l'indice de la dernière occurrence de la valeur spécifiée au sein de l'objet String, ou -1 si elle n'est pas trouvée.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/match">match</a> : utilisée pour vérifier une expression rationnelle.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/replace">replace</a> : utilisée pour trouver une correspondance entre une expression rationnelle et une chaîne, et pour remplacer la correspondance avec une nouvelle sous-chaîne.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/search">search</a> : exécute la recherche d'une correspondance entre une expression rationnelle et une chaîne.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/slice">slice</a> : renvoie une nouvelle chaîne correspondant à l'extraction d'une section d'une chaîne.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/split">split</a> : sépare un objet <code>String</code> en un tableau de sous-chaînes.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/substr">substr</a> : renvoie un certain nombre de caractères d'une chaîne à partir de la position spécifiée.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/substring">substring</a> : renvoie les caractères situées entre deux indices dans une chaîne.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/toLowerCase">toLowerCase</a> : renvoie la chaîne convertie en minuscules.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/toSource">toSource</a> : renvoie une définition littérale d'objet représentant l'objet spécifié. Cette valeur peut être utilisée pour créer un nouvel objet. Remplace la méthode <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/Object/toSource">Object.toSource</a>.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/toString">toString</a> : renvoie une chaîne représentant l'objet spécifié. Remplace la méthode <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/Object/toString">Object.toString</a>.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/toUpperCase">toUpperCase</a> : renvoie la chaîne convertie en majuscules.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/valueOf">valueOf</a> : renvoie la valeur primitive de l'objet spécifié. Remplace la méthode <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/Object/valueOf">Object.valueOf</a>.
</li></ul>
<h4 name="M.C3.A9thodes_li.C3.A9es_.C3.A0_HTML"> Méthodes liées à HTML </h4>
<p>Chacune des méthodes suivantes renvoie une copie de la chaîne encadrée de balises HTML ouvrantes et fermantes. Par exemple, <code>"test".bold()</code> renvoie <code>"&lt;b&gt;test&lt;/b&gt;"</code>.
</p>
<ul><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/anchor">anchor</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/struct/links.html#adef-name-A"><code>&lt;a name="<i>nom</i>"&gt;</code></a> (cible de lien hypertexte)
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/big">big</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/present/graphics.html#edef-BIG"><code>&lt;big&gt;</code></a>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/blink">blink</a> : <code>&lt;blink&gt;</code>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/bold">bold</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/present/graphics.html#edef-B"><code>&lt;b&gt;</code></a>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/fixed">fixed</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/present/graphics.html#edef-TT"><code>&lt;tt&gt;</code></a>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/fontcolor">fontcolor</a> : <code>&lt;font color="<i>couleur</i>"&gt;</code>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/fontsize">fontsize</a> : <code>&lt;font size="<i>taille</i>"&gt;</code>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/italics">italics</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/present/graphics.html#edef-I"><code>&lt;i&gt;</code></a>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/link">link</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/struct/links.html#adef-href"><code>&lt;a href="<i>url</i>"&gt;</code></a> (lien vers une URL)
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/small">small</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/present/graphics.html#edef-SMALL"><code>&lt;small&gt;</code></a>.
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/strike">strike</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/present/graphics.html#edef-STRIKE"><code>&lt;strike&gt;</code></a>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/sub">sub</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/struct/text.html#edef-SUB"><code>&lt;sub&gt;</code></a>
</li><li> <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/sup">sup</a> : <a class="external" href="http://www.la-grange.net/w3c/html4.01/struct/text.html#edef-SUP"><code>&lt;sup&gt;</code></a>
</li></ul>
<p>Ces méthodes sont relativement peu utiles, étant donné qu'elles ne fournissent qu'un petit sous-ensemble des balises et attributs HTML existants.
</p>
<h3 name="Exemples"> Exemples </h3>
<h4 name="Exemple_:_cha.C3.AEne_primitive"> Exemple : chaîne primitive </h4>
<p>L'instruction suivante crée une chaîne primitive depuis la chaîne littérale <code>"Schaefer"</code> et l'assigne à la variable <code>nom_de_famille</code> :
</p>
<pre class="eval">var nom_de_famille = "Schaefer";
</pre>
<h4 name="Exemple_:_propri.C3.A9t.C3.A9s_d.27une_cha.C3.AEne_primitive"> Exemple : propriétés d'une chaîne primitive </h4>
<p>Les expressions suivantes seront évaluées respectivement à <code>8</code>, <code>"SCHAEFER"</code> et <code>"schaefer"</code> :
</p>
<pre class="eval">nom_de_famille.length
nom_de_famille.toUpperCase()
nom_de_famille.toLowerCase()
</pre>
<h4 name="Exemple_:_remplacement_d.27un_caract.C3.A8re_dans_une_cha.C3.AEne"> Exemple : remplacement d'un caractère dans une chaîne </h4>
<p>Un caractère individuel ne peut pas directement être modifié dans une chaîne. Il faut, à la place, créer une nouvelle chaîne à l'aide des méthodes <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/substr">substr</a> ou <a href="fr/R%c3%a9f%c3%a9rence_de_JavaScript_1.5_Core/Objets_globaux/String/substring">substring</a> :
</p>
<pre class="eval">function setCharAt(str, index, ch) {
   return str.substr(0, index) + ch + str.substr(index + 1);
}

alert(setCharAt('scam', 1, 'p')); // affiche "spam"
</pre>
<h4 name="Exemple_:_passage_d.27une_cha.C3.AEne_entre_des_scripts_de_fen.C3.AAtres_ou_cadres_diff.C3.A9rents"> Exemple : passage d'une chaîne entre des scripts de fenêtres ou cadres différents </h4>
<p>Le code suivant crée deux variables chaînes et ouvre une seconde fenêtre :
</p>
<pre class="eval">var nom = "Schaefer";
var prenom = "Jesse";
fenetre_emp = window.open('string2.html', 'window1', 'width=300,height=300');
</pre>
<p>Si le code de la seconde fenêtre (<code>string2.html</code>) crée deux variables chaîne, <code>empNom</code> et <code>empPrenom</code>, le code suivant dans la première fenêtre assignera des valeurs à ces variables :
</p>
<pre class="eval">fenetre_emp.empPrenom = prenom;
fenetre_emp.empNom = nom;
</pre>
<p>Le code suivant dans la première fenêtre affiche les valeurs des variables de la seconde fenêtre :
</p>
<pre class="eval">alert('empPrenom dans fenetre_emp vaut ' + fenetre_emp.empPrenom);
alert('empNom dans fenetre_emp vaut ' + fenetre_emp.empNom);
</pre>
<div class="noinclude">
</div>
{{ wiki.languages( { "en": "en/Core_JavaScript_1.5_Reference/Global_Objects/String", "ja": "ja/Core_JavaScript_1.5_Reference/Global_Objects/String", "pl": "pl/Dokumentacja_j\u0119zyka_JavaScript_1.5/Obiekty/String" } ) }}
Revenir à cette révision