{"id":856,"date":"2024-05-06T19:17:27","date_gmt":"2024-05-06T22:17:27","guid":{"rendered":"https:\/\/thiagorossi.com.br\/blog\/?p=856"},"modified":"2025-11-13T21:26:24","modified_gmt":"2025-11-14T00:26:24","slug":"heranca-no-javascript","status":"publish","type":"post","link":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/","title":{"rendered":"Heran\u00e7a no Javascript"},"content":{"rendered":"<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tempo de leitura: <\/span> <span class=\"rt-time\"> 4<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span>\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>Heran\u00e7a no Javascript<\/strong>: A <strong>Heran\u00e7a<\/strong> \u00e9 um pilar da Programa\u00e7\u00e3o Orientada a Objetos (POO), sendo o mecanismo que permite que uma nova classe (subclasse) absorva as propriedades e m\u00e9todos de uma classe existente (superclasse). Isso promove o <strong>reuso de c\u00f3digo<\/strong> e a cria\u00e7\u00e3o de hierarquias l\u00f3gicas.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Embora o JavaScript utilize a sintaxe de classes (<code>class<\/code>), seu motor de heran\u00e7a \u00e9 baseado na <strong>Cadeia de Prot\u00f3tipos<\/strong>, onde objetos se ligam a outros objetos. A sintaxe de classes apenas simplifica essa complexidade.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">1. O Conceito de Heran\u00e7a com Classes (ES6)<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">A heran\u00e7a \u00e9 implementada em duas partes principais: a palavra-chave <code>extends<\/code> e a fun\u00e7\u00e3o <code>super()<\/code>.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">A. Palavra-Chave <code>extends<\/code><\/h3>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Usada na declara\u00e7\u00e3o da subclasse para indicar qual classe est\u00e1 sendo estendida (herdada).<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">JavaScript<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>class Animal { \/* ... *\/ }\n\n\/\/ Cachorro herda de Animal\nclass Cachorro extends Animal {\n    \/* ... *\/\n}\n<\/code><\/pre>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">B. A Palavra-Chave <code>super<\/code><\/h3>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">O <code>super<\/code> serve para duas fun\u00e7\u00f5es cruciais dentro da subclasse:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>Chamada ao Construtor Pai (<code>super()<\/code>):<\/strong> Dentro do <code>constructor<\/code> da subclasse, <strong>deve-se<\/strong> chamar <code>super()<\/code> para inicializar a parte da inst\u00e2ncia que pertence \u00e0 classe pai.<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Acesso a M\u00e9todos do Pai (<code>super.metodo()<\/code>):<\/strong> Permite chamar a vers\u00e3o do m\u00e9todo definida na classe pai, mesmo que o m\u00e9todo tenha sido sobrescrito na subclasse.<\/li>\n<\/ol>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">JavaScript<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>class Veiculo {\n  constructor(marca) {\n    this.marca = marca;\n  }\n}\n\nclass Carro extends Veiculo {\n  constructor(marca, portas) {\n    super(marca); \/\/ 1. Inicializa this.marca\n    this.portas = portas; \/\/ Inicializa propriedade espec\u00edfica\n  }\n}\n<\/code><\/pre>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">2. Sobrescrita de M\u00e9todos (<em>Method Overriding<\/em>)<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">A sobrescrita ocorre quando a subclasse redefine um m\u00e9todo que j\u00e1 existe na superclasse. Isso permite que objetos mais espec\u00edficos (a subclasse) forne\u00e7am uma implementa\u00e7\u00e3o \u00fanica para um comportamento geral.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">JavaScript<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>class Animal {\n  fazerSom() {\n    console.log(\"Som gen\u00e9rico de animal.\");\n  }\n}\n\nclass Gato extends Animal {\n  \/\/ Sobrescrita: Gato fornece sua pr\u00f3pria implementa\u00e7\u00e3o\n  fazerSom() {\n    console.log(\"Miau!\");\n  }\n  \n  apresentar() {\n    super.fazerSom(); \/\/ Acessa o m\u00e9todo do pai\n    this.fazerSom();  \/\/ Chama o m\u00e9todo sobrescrito\n  }\n}\n\nconst gato = new Gato();\ngato.apresentar(); \/\/ Sa\u00edda: Som gen\u00e9rico de animal. Miau!\n<\/code><\/pre>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">3. A Mec\u00e2nica da Cadeia de Prot\u00f3tipos<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">A sintaxe de classes \u00e9 apenas um inv\u00f3lucro para a heran\u00e7a baseada em prot\u00f3tipos.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\">Quando voc\u00ea tenta acessar uma propriedade ou m\u00e9todo em um objeto, o JavaScript primeiro verifica se ele existe no <strong>pr\u00f3prio objeto<\/strong>.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Se n\u00e3o for encontrado, ele segue o <strong>link de prot\u00f3tipo<\/strong> para o objeto pai e repete a busca.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Esse processo se repete ao longo de toda a <strong>Cadeia de Prot\u00f3tipos<\/strong> at\u00e9 que a propriedade seja encontrada ou at\u00e9 que o fim da cadeia (<code>null<\/code>) seja atingido.<\/li>\n<\/ul>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">O comando <code>extends<\/code> em classes \u00e9 o que estabelece corretamente esse link de prot\u00f3tipo entre a subclasse e a superclasse.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">4. Limita\u00e7\u00f5es e Alternativas<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>Sem Heran\u00e7a M\u00faltipla Direta:<\/strong> JavaScript n\u00e3o suporta a heran\u00e7a de m\u00faltiplas classes de forma nativa (o chamado &#8220;problema do diamante&#8221;).<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Mixins:<\/strong> Para reutilizar c\u00f3digo de v\u00e1rias fontes, a comunidade JS utiliza o padr\u00e3o <strong>Mixins<\/strong>, que \u00e9 um objeto contendo m\u00e9todos que podem ser injetados em uma classe.<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Composi\u00e7\u00e3o:<\/strong> Muitas vezes, em vez de usar heran\u00e7a, \u00e9 prefer\u00edvel usar a <strong>Composi\u00e7\u00e3o<\/strong> (&#8220;tem um&#8221;), onde a classe cont\u00e9m inst\u00e2ncias de outras classes para obter a funcionalidade desejada. Isso \u00e9 frequentemente mais flex\u00edvel que a Heran\u00e7a (&#8220;\u00e9 um&#8221;).<\/li>\n<\/ul>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">\u2705 Conclus\u00e3o Heran\u00e7a no Javascript<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Heran\u00e7a no Javascript: A heran\u00e7a \u00e9 um recurso poderoso para alcan\u00e7ar o reuso e a organiza\u00e7\u00e3o estrutural do c\u00f3digo. Ao usar a sintaxe <code>class<\/code> com <strong><code>extends<\/code><\/strong> e <strong><code>super()<\/code><\/strong>, voc\u00ea implementa a <strong>Cadeia de Prot\u00f3tipos<\/strong> de forma clara. Dominar a heran\u00e7a \u00e9 essencial para a cria\u00e7\u00e3o de sistemas modulares, mas a considera\u00e7\u00e3o por alternativas como a <strong>Composi\u00e7\u00e3o<\/strong> \u00e9 crucial para evitar hierarquias excessivamente r\u00edgidas e complexas.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Toda jornada tem um in\u00edcio, e o in\u00edcio para se tornar um desenvolvedor web \u00e9 dominar as seguintes tecnologias, que voc\u00ea encontra aqui mesmo:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"\/category\/html\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"426\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/html.webp\" alt=\"HTML\" class=\"wp-image-600\" srcset=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/html.webp 758w, https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/html-300x169.webp 300w\" sizes=\"auto, (max-width: 758px) 100vw, 758px\" \/><\/a><figcaption class=\"wp-element-caption\">HTML<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"\/category\/css\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"426\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/Capa-Artigos-Linux.webp\" alt=\"CSS\" class=\"wp-image-702\" srcset=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/Capa-Artigos-Linux.webp 758w, https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/Capa-Artigos-Linux-300x169.webp 300w\" sizes=\"auto, (max-width: 758px) 100vw, 758px\" \/><\/a><figcaption class=\"wp-element-caption\">CSS<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"\/category\/javascript\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"426\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript.webp\" alt=\"Javascript\" class=\"wp-image-804\" srcset=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript.webp 758w, https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript-300x169.webp 300w\" sizes=\"auto, (max-width: 758px) 100vw, 758px\" \/><\/a><figcaption class=\"wp-element-caption\">JavaScript<\/figcaption><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">E se voc\u00ea gosta do nosso conte\u00fado, n\u00e3o deixe de contribuir adquirindo os servi\u00e7os e produtos dos nossos apoiadores e empresas que somos associados:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/hostinger.com.br\/?REFERRALCODE=1THIAGO62\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"250\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/03\/hostinger.png\" alt=\"Hospedagem Hostinger\" class=\"wp-image-92\"\/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/amzn.to\/3SNDYlc\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"250\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/08\/ofertas-amazon.webp\" alt=\"Ofertas Amazon\" class=\"wp-image-1308\"\/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/amzn.to\/3SNKmt0\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"250\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/08\/amazonprime.webp\" alt=\"Amazon Prime\" class=\"wp-image-1307\"\/><\/a><\/figure>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tempo de leitura: <\/span> <span class=\"rt-time\"> 4<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span>Heran\u00e7a no Javascript: A Heran\u00e7a \u00e9 um pilar da Programa\u00e7\u00e3o Orientada a Objetos (POO), sendo&#8230;<\/p>\n","protected":false},"author":1,"featured_media":804,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[],"class_list":["post-856","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript","wpcat-8-id"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Heran\u00e7a no Javascript - BLOG THIAGO ROSSI<\/title>\n<meta name=\"description\" content=\"Heran\u00e7a no Javascript: Neste artigo, exploraremos a fundo a heran\u00e7a em JavaScript, desde seus conceitos b\u00e1sicos at\u00e9 as suas aplica\u00e7\u00f5es mais..\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Heran\u00e7a no Javascript - BLOG THIAGO ROSSI\" \/>\n<meta property=\"og:description\" content=\"Heran\u00e7a no Javascript: Neste artigo, exploraremos a fundo a heran\u00e7a em JavaScript, desde seus conceitos b\u00e1sicos at\u00e9 as suas aplica\u00e7\u00f5es mais..\" \/>\n<meta property=\"og:url\" content=\"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/\" \/>\n<meta property=\"og:site_name\" content=\"BLOG THIAGO ROSSI\" \/>\n<meta property=\"article:published_time\" content=\"2024-05-06T22:17:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-14T00:26:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"758\" \/>\n\t<meta property=\"og:image:height\" content=\"426\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Thiago Rossi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Thiago Rossi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/\"},\"author\":{\"name\":\"Thiago Rossi\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/5f28286948ec2afdeb2e044a2196cd87\"},\"headline\":\"Heran\u00e7a no Javascript\",\"datePublished\":\"2024-05-06T22:17:27+00:00\",\"dateModified\":\"2025-11-14T00:26:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/\"},\"wordCount\":580,\"publisher\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/javascript.webp\",\"articleSection\":[\"Javascript\"],\"inLanguage\":\"pt-BR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/\",\"name\":\"Heran\u00e7a no Javascript - BLOG THIAGO ROSSI\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/javascript.webp\",\"datePublished\":\"2024-05-06T22:17:27+00:00\",\"dateModified\":\"2025-11-14T00:26:24+00:00\",\"description\":\"Heran\u00e7a no Javascript: Neste artigo, exploraremos a fundo a heran\u00e7a em JavaScript, desde seus conceitos b\u00e1sicos at\u00e9 as suas aplica\u00e7\u00f5es mais..\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/#primaryimage\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/javascript.webp\",\"contentUrl\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/javascript.webp\",\"width\":758,\"height\":426,\"caption\":\"Javascript\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/heranca-no-javascript\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Heran\u00e7a no Javascript\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/\",\"name\":\"THIAGO ROSSI\",\"description\":\"Mais de 20 anos de experi\u00eancia no mercado de TI!\",\"publisher\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#organization\"},\"alternateName\":\"TR | CURSO WEB DEV\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#organization\",\"name\":\"THIAGO ROSSI\",\"alternateName\":\"TR | CURSO WEB DEV\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/new-logo.webp\",\"contentUrl\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/new-logo.webp\",\"width\":300,\"height\":300,\"caption\":\"THIAGO ROSSI\"},\"image\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/linkedin.com\\\/in\\\/thiagox86\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/5f28286948ec2afdeb2e044a2196cd87\",\"name\":\"Thiago Rossi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g\",\"caption\":\"Thiago Rossi\"},\"description\":\"Com mais de 20 anos de jornada na tecnologia, minha trajet\u00f3ria evoluiu do ensino t\u00e9cnico \u00e0 arquitetura de sistemas complexos. Hoje, foco minha expertise no desenvolvimento de solu\u00e7\u00f5es de Intelig\u00eancia Artificial nativa e an\u00e1lise de dados p\u00fablicos, utilizando o ecossistema PHP para transformar dados brutos em transpar\u00eancia e efici\u00eancia. Como autor e desenvolvedor, acredito na democratiza\u00e7\u00e3o do conhecimento. Essa vis\u00e3o resultou em uma biblioteca de mais de 530 artigos gratuitos, cobrindo desde a base do WebDev e Infraestrutura at\u00e9 os bastidores da ind\u00fastria de Jogos e IA. No universo de Game Design, sou autor do livro \\\"GDD \u2013 O Guia Definitivo\\\" e documento ativamente meus processos atrav\u00e9s de DevLogs, unindo rigor t\u00e9cnico e criatividade em projetos desenvolvidos com GDevelop 5. Meu compromisso \u00e9 conectar engenharia de ponta com as reais oportunidades do mercado de tecnologia.\",\"sameAs\":[\"https:\\\/\\\/thiagorossi.com.br\\\/blog\",\"https:\\\/\\\/instagram.com\\\/thiagorossix86\",\"https:\\\/\\\/linkedin.com\\\/in\\\/thiagox86\"],\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/author\\\/thiagorossi\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Heran\u00e7a no Javascript - BLOG THIAGO ROSSI","description":"Heran\u00e7a no Javascript: Neste artigo, exploraremos a fundo a heran\u00e7a em JavaScript, desde seus conceitos b\u00e1sicos at\u00e9 as suas aplica\u00e7\u00f5es mais..","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/","og_locale":"pt_BR","og_type":"article","og_title":"Heran\u00e7a no Javascript - BLOG THIAGO ROSSI","og_description":"Heran\u00e7a no Javascript: Neste artigo, exploraremos a fundo a heran\u00e7a em JavaScript, desde seus conceitos b\u00e1sicos at\u00e9 as suas aplica\u00e7\u00f5es mais..","og_url":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/","og_site_name":"BLOG THIAGO ROSSI","article_published_time":"2024-05-06T22:17:27+00:00","article_modified_time":"2025-11-14T00:26:24+00:00","og_image":[{"width":758,"height":426,"url":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript.webp","type":"image\/webp"}],"author":"Thiago Rossi","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Thiago Rossi","Est. tempo de leitura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/#article","isPartOf":{"@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/"},"author":{"name":"Thiago Rossi","@id":"https:\/\/thiagorossi.com.br\/blog\/#\/schema\/person\/5f28286948ec2afdeb2e044a2196cd87"},"headline":"Heran\u00e7a no Javascript","datePublished":"2024-05-06T22:17:27+00:00","dateModified":"2025-11-14T00:26:24+00:00","mainEntityOfPage":{"@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/"},"wordCount":580,"publisher":{"@id":"https:\/\/thiagorossi.com.br\/blog\/#organization"},"image":{"@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/#primaryimage"},"thumbnailUrl":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript.webp","articleSection":["Javascript"],"inLanguage":"pt-BR"},{"@type":"WebPage","@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/","url":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/","name":"Heran\u00e7a no Javascript - BLOG THIAGO ROSSI","isPartOf":{"@id":"https:\/\/thiagorossi.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/#primaryimage"},"image":{"@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/#primaryimage"},"thumbnailUrl":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript.webp","datePublished":"2024-05-06T22:17:27+00:00","dateModified":"2025-11-14T00:26:24+00:00","description":"Heran\u00e7a no Javascript: Neste artigo, exploraremos a fundo a heran\u00e7a em JavaScript, desde seus conceitos b\u00e1sicos at\u00e9 as suas aplica\u00e7\u00f5es mais..","breadcrumb":{"@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/#primaryimage","url":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript.webp","contentUrl":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/javascript.webp","width":758,"height":426,"caption":"Javascript"},{"@type":"BreadcrumbList","@id":"https:\/\/thiagorossi.com.br\/blog\/heranca-no-javascript\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/thiagorossi.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Heran\u00e7a no Javascript"}]},{"@type":"WebSite","@id":"https:\/\/thiagorossi.com.br\/blog\/#website","url":"https:\/\/thiagorossi.com.br\/blog\/","name":"THIAGO ROSSI","description":"Mais de 20 anos de experi\u00eancia no mercado de TI!","publisher":{"@id":"https:\/\/thiagorossi.com.br\/blog\/#organization"},"alternateName":"TR | CURSO WEB DEV","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/thiagorossi.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/thiagorossi.com.br\/blog\/#organization","name":"THIAGO ROSSI","alternateName":"TR | CURSO WEB DEV","url":"https:\/\/thiagorossi.com.br\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/thiagorossi.com.br\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/new-logo.webp","contentUrl":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/new-logo.webp","width":300,"height":300,"caption":"THIAGO ROSSI"},"image":{"@id":"https:\/\/thiagorossi.com.br\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/linkedin.com\/in\/thiagox86"]},{"@type":"Person","@id":"https:\/\/thiagorossi.com.br\/blog\/#\/schema\/person\/5f28286948ec2afdeb2e044a2196cd87","name":"Thiago Rossi","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g","caption":"Thiago Rossi"},"description":"Com mais de 20 anos de jornada na tecnologia, minha trajet\u00f3ria evoluiu do ensino t\u00e9cnico \u00e0 arquitetura de sistemas complexos. Hoje, foco minha expertise no desenvolvimento de solu\u00e7\u00f5es de Intelig\u00eancia Artificial nativa e an\u00e1lise de dados p\u00fablicos, utilizando o ecossistema PHP para transformar dados brutos em transpar\u00eancia e efici\u00eancia. Como autor e desenvolvedor, acredito na democratiza\u00e7\u00e3o do conhecimento. Essa vis\u00e3o resultou em uma biblioteca de mais de 530 artigos gratuitos, cobrindo desde a base do WebDev e Infraestrutura at\u00e9 os bastidores da ind\u00fastria de Jogos e IA. No universo de Game Design, sou autor do livro \"GDD \u2013 O Guia Definitivo\" e documento ativamente meus processos atrav\u00e9s de DevLogs, unindo rigor t\u00e9cnico e criatividade em projetos desenvolvidos com GDevelop 5. Meu compromisso \u00e9 conectar engenharia de ponta com as reais oportunidades do mercado de tecnologia.","sameAs":["https:\/\/thiagorossi.com.br\/blog","https:\/\/instagram.com\/thiagorossix86","https:\/\/linkedin.com\/in\/thiagox86"],"url":"https:\/\/thiagorossi.com.br\/blog\/author\/thiagorossi\/"}]}},"_links":{"self":[{"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/posts\/856","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/comments?post=856"}],"version-history":[{"count":2,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/posts\/856\/revisions"}],"predecessor-version":[{"id":4652,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/posts\/856\/revisions\/4652"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/media\/804"}],"wp:attachment":[{"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/media?parent=856"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/categories?post=856"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/tags?post=856"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}