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

네이버 환율 뿌리기 채택완료

그누스트랩 4년 전 조회 2,441

 

</strong></p>

<p> $usd = $Data["USD"]["1"];

 echo $usd;</p>

<p><strong>
 

 

네이버환율을 php로 가져와서 echo문으로 찍어보니

 

1170.05 이렇게 잘가져오더라구요 이걸 

 

 

</strong></p>

<p><script></p>

<p>usdkrw = <?=$usd?>;</p>

<p></script></p>

<p><strong>
 

 

이와같이 처리하면 값이 119758.99% 이렇게 나오고

 

</strong></p>

<p><script></p>

<p>usdkrw = 1170.05;</p>

<p></script></p>

<p><strong>
 

 

직접적으로 숫자를 넣어주면 2.6% 이렇게 잘나옵니다 왜그런걸까요?

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

답변 3개

채택된 답변
+20 포인트

계산이 잘못되는건 문자 , 숫자 의 형변환이 안되서 그런건데

 

스크립트에서 

 

usdkrw = Number(<?=$usd?>);

 

이걸로 안되면

 

 

usdkrw = parseFloat(<?=$usd?>);

 

이렇게 해보세요

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

답변에 대한 댓글 1개

그누스트랩
4년 전
답변감사드립니다 하지만 echo 찍었을땐 1172 정확히 찍히는데 스크립트에서만 달라지네요 계산수식에 들어가면서 바껴서 그런지 모르겠네요

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

</p>

<p><span class="token tag"><span class="token tag"><span class="token punctuation"><</span>script</span><span class="token punctuation">></span></span><span class="token script"><span class="token language-javascript"> usdkrw <span class="token operator">=</span> "<span class="token php language-php"><span class="token delimiter important"><?=</span><span class="token variable">$usd</span><span class="token delimiter important">?>"</span></span><span class="token punctuation">;</span> </span></span><span class="token tag"><span class="token tag"><span class="token punctuation"></</span>script</span><span class="token punctuation">></span></span></p>

<p>

따옴표?

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

답변에 대한 댓글 1개

그누스트랩
4년 전
NAN% 표시되네요 ㅠ

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

</p>

<pre>
<code><script>
usdkrw = Number(<?=$usd?>);
</script></code></pre>

<p>

로 해보세요

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

답변에 대한 댓글 1개

그누스트랩
4년 전
ㅠㅠ동일합니다 php쪽에서도 number_format으로 해줘도 같네요 값은 같나봐요

usdkrw = 1172;
window.setInterval(function(){
oTable.rows().invalidate();
oTable.draw();
$.get("https://api.binance.com/api/v3/ticker/price", function(data) {
// console.log(data);
data.forEach(e => {
if (e.symbol.slice(-4, e.symbol.length) == "USDT") {
// console.log(e.symbol.slice(0, -4), e.symbol.slice(-4, e.symbol.length));
var symbol = e.symbol.slice(0, -4);
var binance_price = parseFloat(e.price)*usdkrw;
var upbit_price = $("#money_"+symbol).attr("price");
// console.log(upbit_price);
$("#icon_"+symbol).text( (Math.round((upbit_price-binance_price)/binance_price * 10000 )/100).toFixed(2).toLocaleString()+"%" );
if ((upbit_price-binance_price)/binance_price > 0) {
$("#icon_"+symbol).css({"color": "#e21616"});;
}
else if ((upbit_price-binance_price)/binance_price < 0) {
$("#icon_"+symbol).css({"color": "#162fe2"});;
}
else {
$("#icon_"+symbol).css({"color": "#000"});;
}

}
});
});

해당 값입니다 ㅠㅠ

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

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

로그인