我正在使用IBM Bluemix为学校项目提供Web服务。
我从API请求一个JSON,它返回如下数据:
{"bovespa":{"cotacao":"46012","variacao":"+1.44"},"dolar":{"cotacao":"3.7340","variacao":"+0.03"},"euro":{"cotacao":"4.0376","variacao":"-0.54"},"atualizacao":"07\/12\/15 - 11:23"}
我的代码在JADE模板中显示每个变量。
我想知道,在JADE模板中,我能否以某种方式控制JADE模板中显示#{VariacaoDolar}
的小数位数。
这是我的.js
文件:
// Hello.
//
// This is JSHint, a tool that helps to detect errors and potential
// problems in your JavaScript code.
//
// To start, simply enter some JavaScript anywhere on this page. Your
// report will appear on the right side.
//
// Additionally, you can toggle specific options in the Configure
// menu.
function main() {
return 'Hello, World!';
}
main();/*eslint-env node*/
//------------------------------------------------------------------------------
// node.js starter application for Bluemix
//------------------------------------------------------------------------------
// HTTP request - duas alternativas
var http = require('http');
var request = require('request');
// cfenv provides access to your Cloud Foundry environment
// for more info, see: https://www.npmjs.com/package/cfenv
var cfenv = require('cfenv');
//chama o express, que abre o servidor
var express = require('express');
// create a new express server
var app = express();
// serve the files out of ./public as our main files
app.use(express.static(__dirname + '/public'));
// get the app environment from Cloud Foundry
var appEnv = cfenv.getAppEnv();
// start server on the specified port and binding host
app.listen(appEnv.port, '0.0.0.0', function() {
// print a message when the server starts listening
console.log("server starting on " + appEnv.url);
});
app.get('/home1', function (req,res) {
http.get('http://developers.agenciaideias.com.br/cotacoes/json', function (res2) {
var body = '';
res2.on('data', function (chunk) {
body += chunk;
});
res2.on('end', function () {
var json = JSON.parse(body);
var cotacao = json["bovespa"]["cotacao"];
var CotacaoDolar = json["dolar"]["cotacao"];
var VariacaoDolar = json["dolar"]["variacao"];
var CotacaoEuro = json["euro"]["cotacao"];
var VariacaoEuro = json["euro"]["variacao"];
var Atualizacao = json["atualizacao"];
console.log('url', req.originalUrl);
obj=req.query;
DolarUsuario=obj['dolar'];
RealUsuario=Number(obj['dolar'])*CotacaoDolar;
EuroUsuario=obj['euro'];
RealUsuario2=Number(obj['euro'])*CotacaoEuro;
if (VariacaoDolar<0) {
recomend= "Recomenda-se, portanto, comprar dólares.";
}
else if (VariacaoDolar=0){
recomend="";
}
else {
recomend="Recomenda-se,portanto, vender dólares.";
}
if (VariacaoEuro<0) {
recomend2= "Recomenda-se, portanto, comprar euros.";
}
else if (VariacaoEuro=0){
recomend2="";
}
else {
recomend2="Recomenda-se,portanto, vender euros.";
}
res.render('cotacao_response.jade', {
'CotacaoDolar':CotacaoDolar,
'VariacaoDolar':VariacaoDolar,
'Atualizacao':Atualizacao,
'RealUsuario':RealUsuario,
'DolarUsuario':DolarUsuario,
'CotacaoEuro':CotacaoEuro,
'VariacaoEuro':VariacaoEuro,
'RealUsuario2':RealUsuario2,
'recomend':recomend,
'recomend2':recomend2
});
var csv = require("fast-csv");
csv
.fromPath("Cambio.csv")
.on("record", function(data){
console.log(data);
})
.on("end", function(){
console.log("done");
});
});
});
});
&#13;
这是我的.jade
文件:
doctype html
html(lang="en")
head
title Cotação
link(rel='stylesheet',href='stylesheets/style.css')
body
h1    Para o Dólar:
h2    A taxa de câmbio é de #{CotacaoDolar}
h2    A variação do câmbio foi de #{VariacaoDolar}% desde sua última cotação. #{recomend}
h2    Você tem #{DolarUsuario} dólares, que valem #{RealUsuario} reais.
br
h1    Para o Euro:
h2    A taxa de câmbio é de #{CotacaoEuro} R$.
h2    A variação do câmbio foi de #{VariacaoEuro}% desde sua última cotação. #{recomend2}
h2    Você tem #{EuroUsuario} euros, que valem #{RealUsuario2} reais.
br
h3    Esses valores correspondem ao preço de compra em #{Atualizacao}.
h3    Se você quer aprender mais sobre câmbio, visite a #[a(href='https://pt.khanacademy.org/economics-finance-domain/core-finance/money-and-banking/currency-tutorial/v/currency-exchange-introduction') Khan Academy].
h3    Para notícias do mercado de câmbio, acesse #[a(href='http://www.valor.com.br/search/apachesolr_search/c%C3%A2mbio?solrsort=created%20desc&filters=-type%3Avalor_international_conteudo%20-type%3Awall_street_journal%20-type%3Avalor_ri*%20-channel%3Ari') Valor Econômico].
#container.col
p
p.
&#13;
答案 0 :(得分:0)
您需要使用Float
代替。使用以下函数将您的数字转换为浮点数。浮点数在小数点后将具有正确的位数,并且不会像字符串一样包裹。
var parsedNumber = parseFloat(youNumber);