Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Carcleo

[Resolvido] inteiro para string

Recommended Posts

como faço para transformar uma variavel int para string e já colocar ela com duas casas decimais?

 

Trata-se de valor em dinheiro.

 

Gostaria ainda de pegar o valor e separar em milhares centenas e dezenas.

 

Tipo; 1.230.320,00.

 

Como fazer isso/?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não.

 

Ainda não é o que eu preciso.

 

Seguinte;

 

Tenho essa função que calcula o montante para pagamento de um pedido de lanche:

// JavaScript Document

function CalculaPreco(array)
{

  var preco = new Array();

  for (i=0;i<array.length-1;i++)
  {
   if (array[i].value=""){array[i].value=0;}
  }

  preco=array[0].value*1.80;
  preco+=array[1].value*1.50;
  preco+=array[2].value*2.00;
  preco+=array[3].value*0.95;
  preco+=array[4].value*25.00;
  preco+=array[5].value*3.00;
  preco+=array[6].value*22.00;
  preco+=array[7].value*50.00;

  document.getElementById('total').innerHTML=preco.toString();
}

Essa função recebe um array por parametro.

Esse array, é um campo texto onde se coloca uma quantidade de ítens para cada tipo de lanche escolhido.

Então, o name desse campo é quant:

             <tr>
               <td>Hossomaki</td>
               <td class="qtd"><input type="text" name="quant" size="3" value="" /></td>
               <td></td>
               <td>Saschimi Salmão</td>
               <td class="qtd"><input type="text" name="quant" size="3" value="" /></td>
             </tr>
             <tr>
               <td>Niguri</td>
               <td class="qtd"><input type="text" name="quant" size="3" value="" /></td>
               <td></td>
               <td>Saschimi Kani</td>
               <td class="qtd"><input type="text" name="quant" size="3" value="" /></td>
             </tr>
             <tr>
               <td>Frango Xadrez</td>
               <td class="qtd"><input type="text" name="quant" size="3" value="" /></td>
               <td></td>
               <td>Rolinho Primavera</td>
               <td class="qtd"><input type="text" name="quant" size="3" value="" /></td>
             </tr>
             <tr>
               <td>Frango Agridoce</td>
               <td class="qtd"><input type="text" name="quant" size="3" value="" /></td>
               <td></td>
               <td>BulGoGui</td>
               <td class="qtd"><input type="text" name="quant" size="3" value="" /></td>
             </tr>

No final, ela entrega o valor para calculado para um label. Do tipo 1.234,45.

Mas tudo que tento não da certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado.

Assim resolveu:

// JavaScript Document

function CalculaPreco(array)
{

  var preco = new Array();

  for (i=0;i<array.length-1;i++)
  {
   if (array[i].value==""){array[i].value=0;}
  }

  preco=array[0].value*1.80;
  preco+=array[1].value*1.50;
  preco+=array[2].value*2.00;
  preco+=array[3].value*0.95;
  preco+=array[4].value*25.00;
  preco+=array[5].value*3.00;
  preco+=array[6].value*22.00;
  preco+=array[7].value*50.00;

  document.getElementById('total').value= number_format(preco, 2, '.', "");
}

Eu estava comendo mosca aqui.

function number_format (number, decimals, dec_point, thousands_sep) {
   number = (number + '').replace(/[^0-9+\-Ee.]/g, '');
   var n = !isFinite(+number) ? 0 : +number,
       prec = !isFinite(+decimals) ? 0 : Math.abs(decimals),
       sep = (typeof thousands_sep === 'undefined') ? ',' : thousands_sep,
       dec = (typeof dec_point === 'undefined') ? '.' : dec_point,
       s = '',
       toFixedFix = function (n, prec) {
           var k = Math.pow(10, prec);
           return '' + Math.round(n * k) / k;
       };
   // Fix for IE parseFloat(0.55).toFixed(0) = 0;
   s = (prec ? toFixedFix(n, prec) : '' + Math.round(n)).split('.');
   if (s[0].length > 3) {
       s[0] = s[0].replace(/\B(?=(?:\d{3})+(?!\d))/g, sep);
   }
   if ((s[1] || '').length < prec) {
       s[1] = s[1] || '';
       s[1] += new Array(prec - s[1].length + 1).join('0');
   }
   return s.join(dec);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.