2014-11-18 2 views
0

은 내가 많은 양을 볼유효성 검사를 시작하는 가장 좋은 방법은 무엇입니까?

if (variable.length) 

에 비해

if (variable !== undefined) 

을하고있는 모든 성능 향상이있을 것입니다 경우에 관해서는 그냥 궁금했지만 그들은 동일하게 나에게 발생합니다.

+3

'variable'이 정의되어 있지 않고'.length'에 액세스하려고하면 오류가 발생합니다. –

+0

그들은 완전히 다른 일을합니까?! – Bergi

+0

다른 용도로 사용되는 경우 제발 알고 싶습니다. 감사합니다. –

답변

1

if (variable !== undefined)을 사용합니다. @NG에 명시된대로. 위의 설명에서 variable이 정의되지 않은 경우 대체 메시지는이됩니다.

성능 차이가 전혀 없어야합니다. 무엇이든간에 이상이면 !==에서 속도와 정확도가 더 좋을 수 있습니다.

variable이 아닌 값인인지 확인하는 것보다 .length을 계산하는 데 약간 더 많은 CPU가 필요합니다.

도움이 되었기를 바랍니다.

0

사용 JSLitmus.js

성능에 서로 다른,하지만 의견을 언급처럼이 없습니다 if (variable.length)

에 대한 if (variable !== undefined)

43,703 옵스/초

43,977 옵스/초 - 사용 .length 변수가 정의되지 않은 경우 오류가 발생합니다.

희망이 있습니다.

+0

이 벤치 마크에서'variable'에 사용한 * values ​​*는 무엇입니까? 또한 분명히 다른 일을하는 것처럼 자신의 실적을 비교하는 것이 타당하지 않습니다. – Bergi

+0

그래, 그들은 다른 일을하지만, OP는 이것을 요구했다. 변수에 문자열 ('test')이 있습니다. –

관련 문제