se a questão não é está, mas simplesmente retorna a valor de ROW, de dentro da função verify aconselho que refatore-o para usar Promise, resolvi refatorar e deixei alguns comentarios:
                        //em um ambiente com varias requisições, passar as respostas de varias requisições por uma global não é nada recomendado, pós entre o tempo de definila e finalizar e retorna, ela já pode ter sido sobreescrita por outra requisição      
                        //adicionei um res.send, pós se a requisição nunca chamar res.send, o browser ira aguarda até gerar um erro "timeout" pós, nenhuma respostas foi enviada
                    console.error("\x1b[31m","Problema com a função de autenticação, erro: \n", err);
*obs.: por não conhecer a API de DB utilizada, não adicionei os casos em que a query da errado (que também pode ser um motivo de row nunca ser definido)...
Então ...a variável pode ser sobrescrita por outra requisição, porém o que quero fazer é exportar a variável rows para meu arquivo account.js que vai percorrer o array e pegar o id do usuário, pra buscar uma foto que tem esse nome (que vai ser o id do usuário) e carregar essa foto na página account, porém pra isso preciso exportar a variável assim que fazer login só que preciso resolver isso na questão da variável ser sobrescrita, poderia me dar um guia ? Porque já tô com esse problema a um tempo – user212376 19/01 às 6:56
@Guilherme, você vai passar por parâmetros de funções/retorno se puder fazer isso em única requisição (que é o recomendado)..., e se você vai buscar por usuário em especifico, também é recomendado fazer isso na query, fazer isso no node js, vai aumentar o consumo de RAM e Rede bastante, desnecessariamente – anon 19/01 às 7:08
@Guilherme a função verify como está na resposta retorna o rows; obs: o "res.send" só pode ser chamado uma vez, recomendo que você o-faça na apenas na narrow function que está no get, para evitar varios "res.send" espalhados por varios arquivos...que podem deixar o código mais difícil encontrar bugs; ah, pra pegar o retorno da função verify no get, você usar then().catch, ou mudar a declaração da narrow function, de "(req,res) => {" para "async (req,res) => {", e usar await verify(... – anon 19/01 às 7:14
@Guilherme quanto a foto de perfil do usuario, se não precisar ser privada, você pode simplesmente salva-la em uma pasta publica de conteúdo estático, e usar algum propriedade unica como id do usuario como nome...; ah e se você está fazendo um sistema com logins; você vai precisar de sessões; olhe o link do express-session; e pesquise sobre logins e sessões no node-js, é bem comun tutoriais sobre sessões/logins pela internet, para qualquer plataforma – anon 19/01 às 7:19
Sim, eu salvo o id do usuário como nome da foto, porém preciso carregar determinada foto para determinados usuários, porém quando eu faço login e vou pra Index, e a foto que deve ser carregada deve ser carregada na página account, porém como vou saber qual foto deve ser carregada a determinado usuário? Por mais que eu tenha salvado o id como nome da foto eu preciso do id do usuário que está acessando a rota para buscar a foto dele, e como conseguir o id do usuário se não for exportando? Porque minha página account é acessada na rota account. – user212376 19/01 às 12:09
A função verify que você criou é uma função assincrona, mas a palavra reservada await está no inicio do console.log(...). Assim, quando você exporta as variaveis, elas podem não ter tido tempo de ser geradas.
o await deve vir antes de uma Promise, como por exemplo antes de db.all(....) que fará uma consulta no banco de dados.
ao fazer token:token, vocé ele cria um objeto com uma váriavel que tem tanto o nome quanto o valor igual a 'Teste', se você não deseja colocar um novo nome a variável, coloque apenas ela, se deseja dar um novo nome dentro do objeto, para evitar que o valor de outra variável seja usada como chave, use uma string, para evitar que o valor de outra variável seja utilizado como nome dentro do objeto
isto é um dos recursos que antes do ES6 tornava Java script fácil de escrever e difícil de quebrar..., que as vezes pode lhe deixar confuso.
Na verdade isso não está errado, essa forma mais simplista foi introduzida no ES6 e é chamada de "Object Property Value Shorthand", caso queira saber mais pode ver aqui: alligator.io/js/object-property-shorthand-es6 – Victor Nogueira 16/01 às 2:52
@VictorNogueira, mas até o node js 10, o ES6 não existe ou é experimental, e até final do ano passado, o node js 8 ainda era usado em produção, pelo google por exemplo (firebase), que tirou o suporte do node js 8 e adicionou o suporte ao 12, versões mais recentes do node JS ficam fora... – anon 16/01 às 3:19

O Acordo Ortográfico da Língua Portuguesa de 1990 é um tratado internacional firmado em 1990 com o objetivo de criar uma ortografia unificada para o português, a ser usada por todos os países de língua oficial portuguesa. Foi assinado por representantes oficiais de Angola, Brasil, Cabo Verde, Guiné-Bissau, Moçambique, Portugal e São Tomé e Príncipe em Lisboa, em 16 de dezembro de 1990.[1] Depois de recuperar a independência, Timor-Leste aderiu ao Acordo em 2004. O processo negocial que resultou no Acordo contou com a presença de uma delegação de observadores da Galiza.[2]
O Acordo Ortográfico da Língua Portuguesa de 1990 pretende instituir uma ortografia oficial unificada para a língua portuguesa, com o objetivo explícito de pôr fim à existência de duas normas ortográficas oficiais divergentes, uma no Brasil e outra nos restantes países de língua oficial portuguesa, contribuindo assim, nos termos do preâmbulo do Acordo, para aumentar o prestígio internacional do português. Na prática, o acordo estabelece uma unidade ortográfica de 98% das palavras, contra cerca de 96% na situação anterior. Contudo, um dos efeitos do Acordo foi o de dividir ainda mais estes países, criando agora três normas ortográficas: a do Brasil, de Portugal e dos restantes países africanos que não implantaram o Acordo apesar de o terem assinado. É dado como exemplo motivador pelos proponentes do Acordo[3] o castelhano, que apresenta diferenças, quer na pronúncia quer no vocabulário entre a Espanha e a América Hispânica, mas está sujeito a uma só forma de escrita, regulada pela Associação de Academias da Língua Espanhola. Por outro lado, os oponentes têm apontado o facto de a ortografia da língua inglesa (e de tantas outras) apresentar variantes nos diversos países anglófonos, sem que a ortografia inglesa tenha sido objecto de regulação estatal legislada.
A adoção da nova ortografia, de acordo com o Anexo II do Acordo — a Nota Explicativa do Acordo Ortográfico da Língua Portuguesa de 1990[4] — que se baseia numa lista de 110 mil lemas da Academia das Ciências de Lisboa,[5] acarreta alterações na grafia de cerca de 1,6% do total de palavras (lemas) na norma em vigor em Portugal, os Países Africanos de Língua Oficial Portuguesa (PALOP), Timor-Leste e Região Administrativa Especial de Macau e na grafia de cerca de 0,8% do total de palavras (lemas) na brasileira.[6] Mas, de acordo com o vocabulário[7] elaborado em 2008 pelo Instituto de Linguística Teórica e Computacional (Lisboa) a partir da base de dados linguísticos MorDebe[8] com 135 mil lemas, a percentagem de lemas afetados — ou seja, palavras simples não flexionadas que constituem entradas num dicionário ou vocabulário — ascende a quase 4% na norma europeia.[9] Este número inclui tanto as palavras que apresentam modificações efetivas na grafia, como as que passam a ser variantes legalmente válidas em toda a CPLP.
O teor substantivo e o valor jurídico do tratado não suscitaram consenso entre linguistas, filólogos, académicos, jornalistas, escritores, tradutores e personalidades dos setores artístico, universitário, político e empresarial das sociedades dos vários países de língua portuguesa. Na verdade, a sua aplicação tem motivado discordância por motivos técnicos, havendo quem aponte lacunas, erros e ambiguidades no texto do Acordo ou simplesmente conteste a adequação ou necessidade de determinadas opções ortográficas, como a introdução de facultatividades (i.e., possibilidade da mesma palavra ter mais do que uma grafia permitida) em vários domínios da ortografia (acentuação, maiusculação e consoantes mudas), a supressão das chamadas "consoantes mudas" (i.e., as que não se pronunciam), as novas regras de hifenização, a supressão do acento diferencial em diversas palavras e a supressão do trema. Também tem havido contestação ao Acordo com fundamentos políticos, económicos e jurídicos, havendo mesmo quem tenha afirmado, em Portugal, a inconstitucionalidade do tratado.[10][11] Outros ainda afirmaram que o Acordo Ortográfico serve, acima de tudo, a interesses geopolíticos e económicos do Brasil.[12][13] O certo é que o Art.º 9.º (Tarefas Fundamentais do Estado) da Constituição da República Portuguesa refere expressamente o uso e difusão internacional da língua portuguesa, mas não se conhece nenhum parecer autorizado sobre a inconstitucionalidade do teor das bases ortográficas do Acordo de 1990.
Até ao início do século XX, tanto em Portugal como no Brasil, seguia-se uma ortografia que, por regra, se baseava nos étimos latino ou grego para escrever cada palavra[14] (exemplos: architectura, caravella, diccionario, diphthongo, estylo, grammatica, lyrio, parochia, kilometro, orthographia, pharmacia, phleugma, prompto, psychologia, psalmo, rheumatismo, sanccionar, theatro etc.).
Em 1911, no seguimento da implantação da república em Portugal, foi levada a cabo uma profunda reforma ortográfica — a Reforma Ortográfica de 1911 — que modificou completamente o aspeto da língua escrita, aproximando-o muito do atual. No entanto, essa reforma foi feita sem qualquer acordo com o Brasil,[15] pelo que os dois países passaram a ter ortografias diferentes: Portugal com uma ortografia reformada, o Brasil com a ortografia tradicional (dita pseudoetimológica).[16]
Ao longo dos anos seguintes, a Academia das Ciências de Lisboa e a Academia Brasileira de Letras foram protagonizando sucessivas tentativas de estabelecimento de uma grafia comum a ambos os países. Em 1931 foi feito um primeiro acordo, no entanto, como os vocabulários que se publicaram, em 1940 (em Portugal) e 1943 (no Brasil), continuavam a conter algumas divergências, realizou-se um novo encontro que deu origem ao Acordo Ortográfico de 1945. Este acordo tornou-se lei em Portugal, pelo Decreto 35.228/45.[17] No Brasil, o Acordo de 1945 foi aprovado pelo Decreto-Lei 8.286/45,[18] mas não foi ratificado pelo Congresso Nacional, sendo por fim revogado pela Lei 2.623/55,[19] continuando os brasileiros a regular-se pela ortografia do Formulário Ortográfico de 1943.[20]
Novo entendimento entre Portugal e o Brasil — efetivo em 1971, no Brasil, e em 1973, em Portugal — aproximou a escrita dos dois países, suprimindo-se os acentos gráficos responsáveis por 70% das divergências entre as duas ortografias oficiais[21] e aqueles que marcavam a sílaba subtónica nos vocábulos derivados com o sufixo -mente ou iniciados por -z- (ex.: sòmente, sòzinho, pèzão). Novas tentativas de acordo saíram goradas em 1975 — em parte devido ao período de convulsão política que se vivia em Portugal — e em 1986 — devido à reação que se levantou em ambos os países, principalmente a propósito da supressão da acentuação gráfica nas palavras esdrúxulas (ou proparoxítonas).[22]
No entanto, como, segundo os proponentes da unificação, a persistência de duas ortografias oficiais da língua portuguesa — a luso-africana e a brasileira — impedia a unidade intercontinental do português e diminuía o seu prestígio no mundo, foi elaborado um "Anteprojeto de Bases da Ortografia Unificada da Língua Portuguesa"[23] em 1988, atendendo às críticas feitas à proposta de 1986, que conduziu à assinatura do novo Acordo Ortográfico em 1990.[24]
Os estudiosos que estão contra o Acordo, apontam para o facto de que nenhum Acordo pode dar prestígio a nenhuma língua, ficando isso à responsabilidade dos falantes. Também não pode aproximar variantes de culturas separadas, dado que cada variante deve ser representativa da sua cultura e não de uma outra. Linguistas, historiadores e críticos comparam o Acordo com uma tentativa de neocolonialismo por parte do Brasil. Defendem que, para as variantes se juntarem, há que se juntar as pessoas — verdadeiras criadoras da língua — e enquanto estas estiverem separadas culturalmente, cada Acordo é um abuso por parte dos políticos. [carece de fontes?]
Para a elaboração do Acordo Ortográfico, entre os dias 6 e 12 de outubro de 1990, reuniram-se na Academia das Ciências de Lisboa as seguintes delegações:[2]
No artigo 3.º, o "Acordo Ortográfico da Língua Portuguesa (1990)" previa a sua entrada em vigor a 1 de janeiro de 1994, mediante a ratificação de todos os membros. No entanto, como apenas Portugal (em 23 de agosto de 1991[32]), o Brasil (em 18 de abril de 1995[33]) e Cabo Verde[34] ratificaram o documento, a sua entrada em vigor ficou pendente.
Assim, em 17 de julho de 1998, na cidade da Praia, Cabo Verde, foi assinado um "Protocolo Modificativo ao Acordo Ortográfico da Língua Portuguesa" que retirou do texto original a data para a sua entrada em vigor, embora continuasse a ser necessária a ratificação de todos os signatários para o Acordo de 1990 entrar em vigor.[35]
Em julho de 2004, os chefes de Estado e de governo da Comunidade dos Países de Língua Portuguesa (CPLP), reunidos em São Tomé e Príncipe, aprovaram um "Segundo Protocolo Modificativo ao Acordo Ortográfico"[36] que, para além de permitir a adesão de Timor-Leste, previa que, em lugar da ratificação por todos os países, fosse suficiente que três membros da CPLP ratificassem o Acordo Ortográfico para que este entrasse em vigor nesses países.[34]
Vasco Graça Moura, escritor e ex-eurodeputado, um dos mais conhecidos opositores do Acordo, defende que o Segundo Protocolo Modificativo, como qualquer outra convenção internacional, só obriga à sua aplicação em cada país se for ratificado por todos os países signatários, o que ainda não aconteceu. Ou seja, só depois de todos os países ratificarem este Protocolo é que estes ficam obrigados a implementar o Acordo internamente. No entanto, este argumento da ilegalidade da ratificação do Protocolo Modificativo de 2004 é contestado pelo jurista e eurodeputado Vital Moreira.[37]
O Brasil ratificou o "Segundo Protocolo Modificativo" em outubro de 2004 e, em abril de 2005, Cabo Verde também. A 17 de novembro de 2006, de uma assentada, São Tomé e Príncipe ratificou o Acordo e os dois protocolos modificativos,[38] cumprindo-se o estabelecido por este Protocolo. Apesar de, na prática, as novas normas já poderem ter entrado em vigor nos três países que ratificaram o Acordo e os protocolos modificativos, considerou-se inviável avançar sem que Portugal também desse por concluído todo o processo. Após alguns adiamentos, a Assembleia da República portuguesa acabou por ratificar o Segundo Protocolo Modificativo em 16 de maio de 2008,[39] sendo o texto promulgado pelo presidente da república Cavaco Silva a 21 de julho de 2008.[40]
Reunidos em Lisboa no dia 25 de julho de 2008, na Declaração sobre a Língua Portuguesa os chefes de Estado e de governo da CPLP manifestaram "O seu regozijo pela futura entrada em vigor do Acordo Ortográfico, reiterando o compromisso de todos os Estados membros no estabelecimento de mecanismos de cooperação, com vista a partilhar metodologias para a sua aplicação prática".[41] Na declaração final da reunião dos ministros da Cultura e Educação havida em Lisboa, em 15 de novembro de 2008, apelou-se "aos Estados Membros que ainda o não fizeram para que ratifiquem os protocolos modificativos e implementem o Acordo Ortográfico e aos que já ratificaram os protocolos modificativos para que estabeleçam no mais curto espaço de tempo uma data comum para implementar a sua utilização nos documentos e publicações oficiais".[42] Paralelamente, o ministro português José António Pinto Ribeiro afirmou que "assim que tivermos o Acordo ratificado por todos os membros da CPLP, temos o instrumento necessário para avançar na ONU e fazer com que o Português seja uma das línguas de trabalho".[43]