2017-09-25 1 views
-10

Débutant ici. J'ai le code:Quelque chose ne va pas avec la façon dont JavaScript lit les tableaux?

var fanta = "Fantastic"; 
fanta.substring (0,4); 

Il imprime le résultat: "Fant", mais devrait-il pas "Fanta", puisque les tableaux commencent à 0? Je viens d'utiliser la console JavaScript pour cela.

+1

À quel point votre chaîne ne devienne un tableau? – ProEvilz

+4

La lecture de [documentation] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/substring) est toujours utile. "_ ** indexEnd **: ... le décalage dans la chaîne du premier caractère à ne pas inclure dans la sous-chaîne renvoyée._" – Teemu

Répondre

3

Selon le docs, substring() en JavaScript est (startIndex, endIndex), et les arguments sont inclusifs et exclusifs respectivement.

Ainsi, la sous-chaîne comprendra l'index 0 mais pas l'index 4.

+0

De cooooouuurse. "Fanta" est de l'index 0 à 4, mais en disant (0, 5) l'arrête à l'index 5? –

+0

Oui. "Fantastique" .substring (0, 5) 'retournerait' Fanta'. Commence à l'index 0 et va à l'index '5 - 1' (donc 4). – Strikegently

0

Comme le docs for substring state en ce qui concerne le second paramètre:

un nombre entier compris entre 0 et la longueur de la chaîne, qui indique le décalage dans la chaîne du premier caractère ne pas inclure dans l' a renvoyé la sous-chaîne.

Alors substring (0,4) commence au premier caractère et saisit tous les personnages jusqu'à, mais non compris, le caractère à la position 4.