{"componentChunkName":"component---src-templates-blog-post-js","path":"/tipos-de-dados-em-javascript/","result":{"data":{"site":{"siteMetadata":{"title":"Blog"}},"markdownRemark":{"id":"042eaaf2-df1e-5277-aa95-73291308532d","excerpt":"T﻿emos dois grupos de tipos em JavaScript: T﻿ipos primitivos T﻿ipos derivados/objetos N﻿o grupo de tipos primitivos temos , , , , ,  e . Os tipos  e  são mais…","html":"<p>T﻿emos dois grupos de tipos em JavaScript:</p>\n<ul>\n<li>T﻿ipos primitivos</li>\n<li>T﻿ipos derivados/objetos</li>\n</ul>\n<p>N﻿o grupo de tipos primitivos temos <code class=\"language-text\">string</code>, <code class=\"language-text\">number</code>, <code class=\"language-text\">boolean</code>, <code class=\"language-text\">null</code>, <code class=\"language-text\">undefined</code>, <code class=\"language-text\">symbol</code> e <code class=\"language-text\">bigint</code>. Os tipos <code class=\"language-text\">symbol</code> e <code class=\"language-text\">bigint</code> são mais recentes na linguagem e não serão exemplificados aqui.</p>\n<p>Qualquer texto entre aspas (simples ou duplas) é do tipo <code class=\"language-text\">string</code>.</p>\n<p>U﻿m número inteiro ou de ponto flutuante é do tipo <code class=\"language-text\">number</code>. Para ser do tipo <code class=\"language-text\">number</code>, não deve estar entre aspas, caso contrário será uma <code class=\"language-text\">string</code>. N<code class=\"language-text\">number</code>ão há um tipo específico para inteiro ou ponto flutuante. Os dois casos são tipo <code class=\"language-text\">number</code>.</p>\n<p>U﻿m valor booleano sempre será <code class=\"language-text\">true</code> ou <code class=\"language-text\">false</code>. Podemos declarar diretamente os valores <code class=\"language-text\">true</code> ou <code class=\"language-text\">false</code> em uma variável ou esse valor booleano poderá ser obtido através de uma operação de comparação, onde por exemplo <code class=\"language-text\">1 &lt; 2</code> resulta em <code class=\"language-text\">true</code> e <code class=\"language-text\">1 &gt; 2</code> resulta em <code class=\"language-text\">false</code>.</p>\n<p>O valor <code class=\"language-text\">null</code> sempre será declarado implicitamente a uma variável, onde significa ausência de valor. Ou seja, a variável declarada com o valor <code class=\"language-text\">null</code>, será do tipo <code class=\"language-text\">null</code>.</p>\n<p>O valor <code class=\"language-text\">undefined</code> é quando tentamos utilizar uma variável declarada porém não inicializada. Então essa variável será do tipo <code class=\"language-text\">undefined</code>.</p>\n<p>V﻿amos ver abaixo alguns exemplos:</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token comment\">// number</span>\n<span class=\"token keyword\">const</span> age <span class=\"token operator\">=</span> <span class=\"token number\">25</span>\nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>age<span class=\"token punctuation\">)</span>\n\n<span class=\"token comment\">// string</span>\n<span class=\"token keyword\">const</span> name <span class=\"token operator\">=</span> <span class=\"token string\">'Ricardo'</span>\nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>name<span class=\"token punctuation\">)</span>\n\n<span class=\"token comment\">// boolean</span>\n<span class=\"token keyword\">const</span> isValid <span class=\"token operator\">=</span> <span class=\"token boolean\">true</span>\nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>isValid<span class=\"token punctuation\">)</span>\n\n<span class=\"token comment\">// null</span>\n<span class=\"token keyword\">let</span> subtitle <span class=\"token operator\">=</span> <span class=\"token keyword\">null</span>\nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>subtitle<span class=\"token punctuation\">)</span>\n\n<span class=\"token comment\">// undefined</span>\n<span class=\"token keyword\">let</span> description\nconsole<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span>description<span class=\"token punctuation\">)</span></code></pre></div>\n<p>N﻿o grupo de tipos derivados/objetos temos os objetos Javascript que incluem funções, arrays e expressões regulares. Todos estes são do tipo <code class=\"language-text\">object</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"javascript\"><pre class=\"language-javascript\"><code class=\"language-javascript\"><span class=\"token comment\">// object</span>\n<span class=\"token keyword\">const</span> person <span class=\"token operator\">=</span> <span class=\"token punctuation\">{</span>\n    name<span class=\"token operator\">:</span> <span class=\"token string\">'Ricardo'</span><span class=\"token punctuation\">,</span>\n    age<span class=\"token operator\">:</span> <span class=\"token number\">39</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token comment\">// function</span>\n<span class=\"token keyword\">function</span> <span class=\"token function\">double</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">number</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">return</span> number <span class=\"token operator\">*</span> <span class=\"token number\">2</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token comment\">// array</span>\n<span class=\"token keyword\">const</span> numbers <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token number\">1</span><span class=\"token punctuation\">,</span> <span class=\"token number\">2</span><span class=\"token punctuation\">,</span> <span class=\"token number\">3</span><span class=\"token punctuation\">,</span> <span class=\"token number\">4</span><span class=\"token punctuation\">,</span> <span class=\"token number\">5</span><span class=\"token punctuation\">]</span>\n\n<span class=\"token comment\">// regular expression</span>\n<span class=\"token keyword\">const</span> pattern <span class=\"token operator\">=</span> <span class=\"token regex\"><span class=\"token regex-delimiter\">/</span><span class=\"token regex-source language-regex\">\\d{2,4}</span><span class=\"token regex-delimiter\">/</span><span class=\"token regex-flags\">g</span></span></code></pre></div>","frontmatter":{"title":"Tipos de dados em JavaScript","date":"October 25, 2022","description":"Conhecendo alguns tipos de dados em JavaScript"}},"previous":{"fields":{"slug":"/como-identificar-se-o-valor-de-uma-variável-é-um-número/"},"frontmatter":{"title":"Como identificar se o valor de uma variável é um número"}},"next":{"fields":{"slug":"/como-configurar-o-cors-no-node-js/"},"frontmatter":{"title":"Como configurar o CORS no Node.js"}}},"pageContext":{"id":"042eaaf2-df1e-5277-aa95-73291308532d","previousPostId":"7878c282-98ae-53ba-9793-a54e65aa4c79","nextPostId":"cccd55cd-2b4c-58c4-a4d5-5160311a8623"}},"staticQueryHashes":["2841359383","3257411868"]}