2017-09-28 1 views
0

내 문자열 뒤에 문자를 가져 오려고 시도 할 때 벨로우즈 코드를 사용하고 있지만 작동하지 않는 것으로 보입니다.각도의 마지막 문자 가져 오기

입력 값 : fileinput-1

예상 결과 : 1

어떤 아이디어. 이것은 내 코드입니다

str = element.id; 
str.substr(str.indexOf('-') + 1); 
console.log(str); 
index = str; 
+0

@Beep : 당신이 명확까지 그것은 단지 당신이 원하는 바로 마지막 문자 경우, 또는 수는 하이픈 후 모든 문자 있다면? 예를 들어, 당신의 입력이'fileinput-12' 였다면, 당신은 어떤 출력을 기대합니까? – musefan

+0

당신의 대답은 완벽한 감사입니다 – Beep

답변

2

substr 호출 결과로 아무 것도하지 않는 것이 문제입니다. 따라서 str 값은 업데이트되지 않습니다.

는이 같은 str 결과를 다시 지정해야합니다

str = str.substr(str.indexOf('-') + 1); 
+0

JavaScript의 문자열이 불변이므로, 우리는'substr'의 반환 값을'str'에 다시 할당해야합니다. –

+0

질문은 '문자열의 마지막 문자 가져 오기'입니다.'-'다음에 모든 문자를 가져 오지 마십시오. –

+0

@RameshRajendran : 누군가가 심한가요? 내가 코멘트를 했더라도 당신의 답을 downvoted 것은 아니었지만 당신의 대답을 다루는 데 귀찮게 할 수 없었기 때문에 나는 그 코멘트를 지웠다. – musefan

0

SUBSTR()를 문자열을 반환,이 같은 그것을 잡을해야합니다

str = str.substr(str.indexOf('-') + 1 , 1); 

또는

var newstr = str.substr(str.indexOf('-') + 1, 1); 
+0

질문은 '어떻게 각도의 문자열의 마지막 문자를 얻는가 ??'입니다. - 후에 모든 숯을 얻지 마라. –

+0

@RameshRajendran 당신 말이 맞아요. –

+0

@RameshRajendran 질문이 변경되었습니다. : -/ –

-1

substr() 또는 slice()으로 시도해보십시오.

var text = "field-1"; 
 
var result = text.substr(text.length - 1); 
 
alert(result) 
 
// or use slice 
 
    var res= text.slice(-1); 
 
    alert(res)

+0

^^^^^^^ LOL (및 세미콜론이 누락 됨) (및 들여 쓰기가 들여 쓰기) (및 불필요한 두 번째 변수) 때문에 downvote가 발생했습니다. –