Turiu
var id="ctl03_Tabs1";
Kaip, naudodamasis JavaScript, galėčiau gauti paskutinius penkis simbolius arba paskutinį simbolį?
EDIT: Kaip nurodė kiti, vietoj substr
naudokite slice(-5)
. Tačiau žr. šio atsakymo apačioje pateiktą .split().pop()
sprendimą, kuriame pateiktas kitas būdas.
Pradinis atsakymas:
Norėsite naudoti Javascript eilutės metodą .substr()
kartu su savybe .length
.
var id = "ctl03_Tabs1";
var lastFive = id.substr(id.length - 5); // => "Tabs1"
var lastChar = id.substr(id.length - 1); // => "1"
Taip gaunami simboliai, pradedant nuo id.length - 5, ir, kadangi antrasis argumentas .substr() praleistas, tęsiamas iki eilutės pabaigos.
Taip pat galite naudoti .slice()
metodą, kaip toliau nurodė kiti.
Jei paprasčiausiai norite rasti simbolius po pabraukimo simbolio, galite naudoti šį būdą:
var tabId = id.split("_").pop(); // => "Tabs1"
Tai padalina eilutę į masyvą ties paryškintuoju ženklu ir tada "išskleidžia" paskutinį elementą iš masyvo (kuris yra norima eilutė).
Paskutinį simbolį gauti lengva, nes eilutes galima laikyti masyvu:
var lastChar = id[id.length - 1];
Norėdami gauti eilutės dalį, galite naudoti funkciją substr arba substring:
id.substr(id.length - 1); //get the last character
id.substr(2); //get the characters from the 3rd character on
id.substr(2, 1); //get the 3rd character
id.substr(2, 2); //get the 3rd and 4th characters
Skirtumas tarp substr
ir substring
yra tas, kaip elgiamasi su antruoju (neprivalomu) parametru. Funkcijoje substr
tai yra simbolių kiekis iš indekso (pirmasis parametras). Naudojant substring
, tai yra indeksas, kuriame turi baigtis simbolių pjaustymas.