Quelle est la différence entre la Chaîne.tranche et de la Corde.sous-chaîne?

Personne ne sait quelle est la différence entre ces deux méthodes:

String.prototype.slice
String.prototype.substring
  • C'est un exemple de la mauvaise conception de JavaScript que nous nous sommes retrouvés avec trois méthodes que tous font la même chose, mais avec d'autres bizarreries. OMI slice est celui avec le moins de comportements inattendus.
  • L'OMI sous-chaîne lorsqu'elle est utilisée pour prendre une sous-chaîne à partir idx jusqu'à la fin est plus compréhensible en un coup d'œil. Surtout pour les noobs
  • Selon ce site, slice peut réellement remplacer substring et il n'y a pas de raison de l'utiliser.
  • Le slice & substring méthodes sont toutes plus le même, sauf que les slice() accepte un indice négatif, par rapport à la fin de la chaîne, mais pas le substring, il jette out-of-bound erreur
  • Pas vrai du tout. Si vous essayez var a = "asdf".substring(-1);, il est considéré comme var a = "asdf".substring(0);. Il n'y a aucune exception n'est levée. Et si vous utilisez var a = "asdf".substring(2, -1);, il utilise 0 en place de -1 (comme avant), et les swaps, les arguments de sorte qu'il agit comme var a = "asdf".substring(0, 2);. J'ai même essayé sur IE 8 et a obtenu les résultats sans exceptions
  • "J'ai même essayé sur IE 8" - j'aime la programmation.

InformationsquelleAutor tmim | 2010-02-11