2010-01-11 2 views
0

jQuery에서이 스크립트에 해당하는 내용 (이 HTML 요소 인 경우)은 무엇입니까?jQuery에서 변수 ++을 달성하는 방법은 무엇입니까?

a.value++; and ++a.value; 

가 나는 val() 사용하는 가정,하지만 사용하는 비효율적 인 것 같다

a.val(a.val()+1); 
+0

질문이 꽤 모호합니다. 'a'가 정상적인 자바 스크립트 변수 인 경우, 원한다면'++'를 사용할 수 있습니다; jQuery와는 아무런 관련이 없습니다. Tatu의 대답은 HTML 요소의 가치를 사용하려는 경우 해결되지만, 현재의 질문과 함께 완전히 추측됩니다. –

+0

당신이 고려해야 할 또 다른 사항은 첫 번째로 일치하는 요소에만 적용할지, 요소 집합을 증가 시키든, 모든 요소를 ​​동일한 값으로 설정할지 여부입니다. 'a.val (a.val() + 1); '의 의미로 * 실제로 일치하는 모든 요소의 값을 * 첫 번째로 일치하는 요소의 증가 된 값으로 설정합니다. – Graza

+0

막연한 것에 대해 유감입니다. HTML 입력 요소의 값을 하나 씩 늘리기 전에이 값을 저장하려고 할 때이 문제가 발생했습니다. 하지만 난 그냥 jQuery를 사용하여 값에 액세스하려고 정상적인 JavaScript를 사용하기 전에이 일을했습니다. 따라서 Tatu의 대답은 내가 원했던 것입니다. 감사합니다. –

답변

6

jQuery를 자바 스크립트, 그리고 자바 스크립트에서 모두 a++++a 작동합니다. 입력 요소의 값을 하나씩 늘리려고한다고 가정합니다. – 불행히도 그 바로 가기가 없습니다. 당신은 쓸 필요가 :

a.val(parseInt(a.val()) + 1); 

그렇지 않으면 현재 값이 문자열로 해석되고 1 연결된 대신 추가됩니다 parseInt을 사용해야합니다.

a++ 분명히 귀하의 경우처럼 작동하지 않습니다 a jQuery 개체입니다.

+0

지금까지는 문자열로 잘못 해석 한 ++ 또는 ++ 문제가 없었습니다. Quick note though : jQuery Cookbook에 따르면 ++ a는 ++보다 빠르게 실행됩니다. 그 차이는 작지만 8 중 문제를 피하기 위해 대규모 루프에 있지 않다면 무시할 수 있습니다. – Mike

+7

'parseInt (..., 10)'. '+ 1' 또는 자체적으로 정수형이 아닌'Number'로 변환됩니다. – bobince

관련 문제