테스트 사이트 - 개발 중인 베타 버전입니다

자바스크립트 연산자 채택완료

JinyeongJang 7년 전 조회 3,009

아래의 자바스크립트를 활용할 예정입니다. 아래의 내용중, 3번째 줄에,

var walkkTime = distance / 67 | 0;

이게 무슨 뜻인가요? | 도 연산자인가요? 첨봐서..  | 0 이게 뭔지는 몰라도 이거 없어도 되는거 아닌가요??

 

감사합니다.

 

</p>

<p>function getTimeHTML(distance) {</p>

<p>    // 도보의 시속은 평균 4km/h 이고 도보의 분속은 67m/min입니다

    var walkkTime = distance / 67 | 0; // 이부분이 이해가 안가네요...ㅠ 

    var walkHour = '', walkMin = '';</p>

<p>    // 계산한 도보 시간이 60분 보다 크면 시간으로 표시합니다

    if (walkkTime > 60) {

        walkHour = '<span class="number">' + Math.floor(walkkTime / 60) + '</span>시간 '

    }

    walkMin = '<span class="number">' + walkkTime % 60 + '</span>분'</p>

<p>    // 자전거의 평균 시속은 16km/h 이고 이것을 기준으로 자전거의 분속은 267m/min입니다

    var bycicleTime = distance / 227 | 0;

    var bycicleHour = '', bycicleMin = '';</p>

<p>    // 계산한 자전거 시간이 60분 보다 크면 시간으로 표출합니다

    if (bycicleTime > 60) {

        bycicleHour = '<span class="number">' + Math.floor(bycicleTime / 60) + '</span>시간 '

    }

    bycicleMin = '<span class="number">' + bycicleTime % 60 + '</span>분'</p>

<p>    // 거리와 도보 시간, 자전거 시간을 가지고 HTML Content를 만들어 리턴합니다

    var content = '<ul class="dotOverlay distanceInfo">';

    content += '    <li>';

    content += '        <span class="label">총거리</span><span class="number">' + distance + '</span>m';

    content += '    </li>';

    content += '    <li>';

    content += '        <span class="label">도보</span>' + walkHour + walkMin;

    content += '    </li>';

    content += '    <li>';

    content += '        <span class="label">자전거</span>' + bycicleHour + bycicleMin;

    content += '    </li>';

    content += '</ul>'</p>

<p>    return content;

}</p>

<p>

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
7년 전

 |  는 비트 OR 연산자로서

distance / 67 의 결과에서 소수점이하를 잘라내고 0 과 OR 연산을 수행합니다.

 

distance / 67 | 0  는 Math.floor( distance / 67 ) 과 같다고 보시면 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

J
JinyeongJang
7년 전
아 그렇군요. 감사합니다.^^

댓글을 작성하려면 로그인이 필요합니다.

답변에 대한 댓글 1개

J
JinyeongJang
7년 전
감사합니다. ^^

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인