;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Logo Pagbenk Seu dinheiro rende mais
Topo

Precisa de dólar, mas ficou muito caro? Saiba o que fazer

Vinicius Pereira

Colaboração para o UOL, em São Paulo

29/03/2019 04h00Atualizada em 28/02/2020 17h43

O dólar deu uma disparada em março, chegando a encostar em R$ 4, depois de cair a R$ 3,66 no fim de janeiro. Uma das razões foi a disputa pública entre o governo Bolsonaro e o Congresso.

A cotação teve um recuo ontem, mas ainda está alta. O que fazer caso você precise comprar dólares logo agora? Segundo especialistas consultados pelo UOL, quem realmente necessita adquirir a moeda americana deve apelar à boa e velha pesquisa de preços.

"O interessado de última hora deve pesquisar bastante, em casas de câmbio e corretoras idôneas, para não ter nenhum tipo de inconveniente e achar o melhor preço", disse Juvenal Marcelo dos Santos, superintendente de Varejo do Grupo Travelex Confidence.

Divida a compra em parcelas

Para ele, caso o cliente tenha tempo, ele deverá fracionar a compra em diversas vezes para obter uma média das cotações ao longo de um intervalo.

"Com até duas semanas de antecedência, já é possível acompanhar o mercado e ir comprando aos poucos, fracionado", afirmou Santos.

De acordo com ele, quanto maior for o tempo, melhor serão as possibilidades de compra da moeda pelo menor preço.

Reduza a quantidade se necessário

Para o educador financeiro Reinaldo Domingos, quem já está com viagem marcada não deve desistir de ir, mas repensar alguns gastos.

"Você pode comprar menos dólares. Repense os gastos. Talvez não dê mais para levar US$ 5.000, mas sim US$ 4.800. O importante é não deixar de ir", disse ele.

Preocupações com a reforma da Previdência

A troca de farpas entre membros do governo Bolsonaro e o presidente da Câmara, Rodrigo Maia (DEM) piorou o clima político e aumenta a preocupação de investidores com a tramitação da reforma da Previdência.

Ontem houve acenos de paz e avanços, como a nomeação do relator da comissão que vai avaliar a reforma.

O temor que causa a alta do dólar era de que o governo não consiga articular os parlamentares para aprovar a proposta, considerada pelo mercado fundamental para equilibrar as contas públicas do país.

Dólar comercial x dólar turismo

O valor do dólar divulgado diariamente pela imprensa, inclusive o UOL, se refere ao dólar comercial. Para turistas, o valor sempre é maior graças a taxas e à margem de lucro das empresas que comercializam a moeda.

Entenda como funciona o câmbio do dólar

UOL Notícias