Transcrições
1. Apresentação do curso: Muito bem, bem-vindos a outra turma, meus alunos compartilham habilidades. Eu sou super classe Antinous porque esta classe é tudo sobre objetos. Por que objetos são importantes? Bem, eles são tão importantes porque eles formam a base de praticamente tudo o que fazemos na programação. Na verdade, é toda uma faceta da programação chamada programação orientada a objetos, ou 2P para abreviar. Então, Clyde, legal, eles são importantes, mas o que exatamente é um objeto? Bem, um objeto pode ser qualquer coisa. E, na verdade, quando se trata de programação, muitas vezes
é mais fácil perguntar o que não é um objeto? E a resposta para isso não é muito. Na verdade, em uma das classes anteriores caímos quais variáveis estavam em JavaScript? E você pode pensar como um objeto como uma variável. Mas em esteróides, porque um objeto pode conter não apenas um pedaço de pontos ou um pedaço de informação. Um objeto pode conter vários tipos diferentes de pares de valor de nome. Se isso está passando por cima de você, não se preocupe, esta cláusula vai lidar com isso em detalhes. Agora, nesta aula vamos cobrir o básico. O que é um objeto que o coração trabalha tem aparência. Nós vamos ficar um pouco mais avançados também. Sabe, como programadores, muitas vezes
temos muita flexibilidade em como
codificamos de várias maneiras para esfolar um gato, em outras palavras. Mas às vezes isso pode levar à confusão. Por exemplo, as muitas maneiras de criar um objeto em JavaScript. E nós vamos falar sobre essas maneiras diferentes. Vamos discutir quando devemos usar um em vez do outro. Vamos nos divertir muito. Vamos ver exemplos práticos. Então essa aula vai ser muito,
muito cheia de informações divertidas e úteis. Na verdade, é praticamente uma das palestras mais importantes porque objetos como uma semente formam a base da maioria das coisas que fazemos na programação. Dito isso, vamos entrar em nós, tomar um café, Gregory Boyle, o que te motiva. E vejo-te na próxima palestra. C nada.
2. Quais são objetos: que estamos entrando em objetos. Esta é uma bagunça de seção
muito, muito importante para você entender. Então, estou animada. Vamos começar a passar por isso. Lembre-se de um tempo atrás vemos que existem dois tipos filha em Java simples e completa . E porque a comunidade de programação nos intimida a todos, eles o chamam de primitivo e objetos. Então, o que são objetos? Este é todo o ponto desta seção. Vamos recuar e Google JavaScript. Sim, O que surge na primeira página vê JavaScript é uma
linguagem de programação de computador orientada a objetos , e isso nos traz para objetos. Programação é obcecada por objetos. Linguagens de programação profissional usam um estilo de programação conhecido como boop ou programação
orientada a objetos . Então o que é um objeto e objeto poderia ser uma casa de jardim, um tijolo. Um carro pode ser um botão na sua página da Web. Às vezes é mais fácil perguntar o que não é um objeto, e a resposta não é muito
3. Pares de nome e valor: e eu mencionei que objetos ou um monte de pilares de valor de nome. Eu só quero enfatizar este ponto novamente e levá-lo para casa e nomear uma aventura eo nome eo valor de separado por dois pontos. Tens o teu nome no cólon esquerdo e o teu valor à direita. Deixe-me dar-lhe um exemplo. E lembro-me de viver na Unidade Principal 31 100, no terceiro andar. Bem, o endereço é o nome, e a ocasional real é o valor e novamente e separado por dois pontos. Mas podemos representar-nos de outra forma. Talvez queiras separá-lo. O que? Quero dizer, deixa-me mostrar-te. É levar o vestido deles. Vamos abrir um novo objeto. E agora no mecanismo JavaScript vê essas chaves. Não é um operador. Vai assumir que há um objeto. Então o endereço será o nome, e o valor será o objeto inteiro. Então é isso. Respire. A rua é principal novamente. Esse é um nome em um muito agora que acabamos de colocar um comentário. Então nós temos o número, que é o nome Coal em um nome o valor, que neste caso é 100 nós podemos continuar. Mas agora temos uma unidade. Este é outro ponto. Fui às ruas. Podemos realmente ter objetos aninhados e peers de valor de nome dentro de um objeto. Sim, temos o andar,
terceiro andar , e depois o número 301 novamente. Unidade. O nome dele. E, em seguida, todo o objeto é o valor. Eu ouvi. Isso está começando a fazer sentido. É só nome, muito pago. Vamos seguir em frente.
4. Objects armazene dados: Então objetos são um monte de nomes e muito porcos. Estávamos discutindo um minuto atrás sobre o que é um objeto e concluímos um objeto. Isto é quase tudo. Assim como isto. - Eu? Bem, deixe-me dar-lhe um exemplo. Antes de começarmos a revestir, você pode estar pensando em homens, sabe, nós passamos por variáveis. Por que precisamos de objetos? Bem, você ilustra pelo exemplo. Então ele tem uma semana o quê? Os detalhes dele. E lembre-se de como ele tinha seus detalhes. Favoritos invariáveis chamados balões carregados. Tudo está bem. Mas o que aconteceu quando você tem milhares de usuários em seu site? E se você escolher aleatoriamente um recipiente de sua despensa, como você sabe a quem pertence? E mesmo se olharmos para o nome da variável, pode ser vários avisos em seu site. Então, como você sabe que esse dinheiro é realmente o que está relacionado com esses contêineres? Bem, esta semana objetos entram nisso. E o que eu quero dizer com isso é que você quase tem que cercar todas essas variáveis e colocar um rótulo sobre ela e dizer que este é o aspecto geral para cada pessoa em nosso site Uma vez você fez isso, você pode atribuir variáveis, e você pode criar várias instâncias dessa pessoa. Então, para o nosso exemplo aqui, esta é uma pessoa real do nosso lado. Você pode tocar as coisas dele e você perdoar, dizer que ele é uma instância de um objeto de pessoa. E na batida, seu objeto de temporada é apenas um monte fora do valor do nome Piers. Isso é tudo o que isso significa. Então seu saldo de fãs é e nome e os valores 34 é que ele logou no site que é o nome da variável e, em seguida, sabe o valor para que você possa ver objetos e variáveis estão
meio relacionados. Você pode realmente dizer que objetos são um monte de variáveis dentro dele. E como criamos esse novo? Objeto? Bem, se definirmos que a estrutura é um objeto pessoal, tudo que precisamos usar é a nova palavra-chave, e entraremos no nuclear mais tarde. Mas apenas entenda quando você faz isso, você literalmente criou um novo objeto, uma nova instância fora disso, e aqui nós o definimos na variável um. Não se preocupe. Se você não entender muito, eu estou perdendo você um pouco que você está recebendo. É tão familiar com isso. No final dos anos sessenta, dê um passo para trás, respire fundo e lembre-se que tudo o que um objeto é é uma maneira de armazenar sua filha . E porque podemos armazenar filha de uma maneira fácil, torna mais fácil para nós acessar a filha também. No objeto é, não se perca em todos os detalhes. Vamos seguir em frente.
5. Objetos de x variáveis: Está bem. Está bem. Então, por que tem objetos? Por que não só tem variáveis? Me mostrar rapidamente Você deve dizer por que objetos? Vamos supor que temos uma moto. É azul. Duas rodas e é uma Yamaha. Podemos representar isso de forma objetiva. Orientado a objetos. Bem, podemos usar variáveis. Deixe-me mostrar-lhe que a marca da moto é igual a Yemma liderar de volta. A cor é igual a lá e as rodas pretas era para. Então isso é possível. Nós podemos fazer isso. Mas agora você tem que começar a pensar no futuro. Como podemos anexá-los a um usuário específico e no usuário quer alterar apenas um
deles . Vai se tornar muito complicado, o que é? Nós objetos entram na imagem. Isto são variáveis. Agora podemos usar o Jakes. Disposto a fazer com um objeto é usado as chaves. Nós realmente criamos um objeto agora, mesmo que nada esteja nele e eu vou prová-lo para você se nós apenas console olhou para trás, você pode ver que é um objeto vazio e nós podemos ir digitar fora. É só o Cônsul. Pouco tempo livre, como poderíamos ver, preto é um objeto. Quão legal é isso? Fácil de criar um certo Ok, então digamos que é Emma, vamos lá. Rodas para Este é um objeto que você pode realmente começar a sentir e obter uma cena de
quão mais fácil é trabalhar com objetos. E são variáveis, mas são variáveis semelhantes. Nós nomeamos muito cais também. Bicicleta fazer cor muito preta. Realmente rodas de bicicleta. O mesmo com objetos. Nome nomes de valor. Então, eles estão intimamente relacionados. Mas é muito mais fácil trabalhar com um objeto, e é uma variável, como você pode ver neste exemplo. Mas antes de entrarmos em mais detalhes, vamos continuar com os outros pontos que precisamos discutir.
6. Propriedades e métodos: vimos que objetos consiste em um monte de valor nome paga. Mas o que? Todos esses nomes e que todos esses valores bem novamente, dar um passo para trás e objeto só pode conter duas coisas. É isso. Não são propriedades e métodos complicados. O que eu quero dizer com isso? Bem, vamos apenas pegar um HTML simples. Mas quais são as propriedades dessas propriedades de batalha ou coisas como largura e tipo? Que métodos eu gosto de pensar em métodos é fazer palavras. Então, por exemplo, quando estamos falando de um botão que pode estar no pontapé de seu ou mesmo em seus teclados quando você clica, digite ou mesmo quando você pega o mouse e você passa o mouse sobre a massa html. Esses eventos na carne que está ligado ao objeto legal. Então nós vimos objetos consiste em propriedades e métodos. O que queremos dizer? Vamos começar a digitar cartão e é um Nós temos uma bicicleta. Uma das maneiras de criar um objeto é para você. O que um espirro viria para os homens? Mais um? Não, eu sinto muito. Então vamos criar um objeto e vamos chamar nosso objeto de volta. Pense em objeto é um grande conteúdo, e isso disse que a marca de Bach é sim, uh huh. A cor é que tem rodas, mas duas delas. Então nós fizemos propriedades agora. Mas lembre-se, objetos consiste em propriedades, e método minuto é mais para fazer palavras, algo que acontece. Então este método definidor. Vamos chamá-lo de som e todo esse mito ele cria alguns e digamos que nós apenas console log . Você tem isso? Um objeto consiste em propriedades, as propriedades. Aqui está o fazer a cor, as rodas e os métodos. Sim, acabamos de criar um método sonoro. Mas como exercitamos propriedades e métodos? O que fazemos para extraí-la? Vamos dar uma olhada.
7. Acessando propriedades: muito. Objetos têm propriedades associadas a esse objeto. Como é que acedemos a uma propriedade? O objeto é de duas maneiras com uma usando a notação de ponto. E então você ficou com o nome da propriedade depois do médico e o outro
colchetes . E então você pode escrever o nome da propriedade entre ele. Deixa-me dizer-te o que quero dizer. Vamos começar a acessar algumas propriedades. Lembra como dissemos que nem todos os colchetes? Está tentando. Então vamos acessar o objeto. No nosso caso, é bicicleta. Digamos que queremos acessar para fazer e aqui nós só temos que console registrá-lo. Você vai. É o nome da moto? Que tal usar a notação de colchetes? É console olhar como registros de grito abertos e seu tipo no nome propriedade que dizem que
queremos na cor niego ambos gripe. Que tal uma perdê-lo a mesma coisa. Isso executar o método acessando bicicleta usando a notação DOT. Chamamos de som e não para executar omitido e vamos entrar em funções mais tarde e pontuações. Mas você tem que segui-lo por parênteses. Você vai para a sala de registros do console. Agora, a outra coisa, eu não mencionei na natureza é que nós podemos usar o ponto e a notação quadrada não só para excesso de propriedades admitidas, mas também sentar novos problemas e definir novos minutos sobre o objeto. O que eu quero dizer para o comércio. Seis novas propriedades. A jade não podemos dizer bicicleta E que propriedade você quer acabar? Vamos apenas dizer top e queremos que o tipo para exibir o tipo de consumo de combustível, gasolina ou diesel que dizem que isso é imagem e vamos fazer a mesma coisa. Mas usando a notação Brexit. E digamos que este é o sim, temos que impor em uma força. É um modelo de 2019. Nós literalmente agora terminou essas propriedades para o objeto bicicleta. Eu aprovo isso. Acabamos de consolar a bicicleta. Você pode ver que incluímos o tipo e o ano com esta notação. E se anexarmos uma propriedade ao objeto? Mas não definimos um valor, não atribuímos valor a ele. Bem, neste caso, não
vai ser Não, vai ser indefinido. Deixa-me mostrar-te o que quero dizer. Digamos que queremos colocar o modelo nisso, mas deixamos assim. Na verdade, não atribuímos um valor ao modelo nas costas deles. O que acha que vai acontecer se eu tentar consolar? Registrar esta bicicleta de console? Não, você tem. Estou definido. Não é sei, então estas são algumas nuances legais com objetos, mas sonho sobre o anteriormente Charles disse que todos os objetos têm propriedades ou você obtém alguns resultados muito estranhos. Na parte de trás, deixem-me mostrar-vos alguns exemplos. Vamos apagar tudo isso. Sinto-me estranho porque escrevo tudo isto e depois apago. É como cavar um buraco. Preciso enchê-lo de novo. Mas de qualquer forma, estamos aprendendo surpresa. Nós pagamos. Deixe-me dar alguns exemplos do que quero dizer quando digo que todos os objetos têm propriedades e
podemos anexar propriedades a qualquer objeto. Então deixe-me dizer,
sim, uh, uh, deixe-me dizer que você pode dar propriedades para praticamente qualquer coisa em script de trabalho. E vamos apenas com o exemplo um. Por enquanto, é apenas criar um objeto vazio. Deixe vazio objeto t limpeza. Agora vamos anexar corretamente chamado de T, e nós cancelamos vazio. Nós temos a nossa propriedade e apenas ter em mente que vazio tem um nada significa até que atribuímos um valor alto para a sua propriedade. R. Mas este é um objeto, e sabemos que podemos adicionar propriedades a objetos. E se criarmos uma matriz? Vamos dar outro exemplo. Vejamos o exemplo. Número dois, está chegando. Disse que criamos em T tudo bem. E novamente, podemos colocar uma propriedade em você em não pagar igual. Tudo bem. E se cancelarmos o amor, é uma matriz da propriedade. Oi. Mas você tem que ter cuidado com essas coisas porque embora possamos adicionar propriedades a qualquer coisa em empregos, capital, praticamente qualquer coisa não significa que devemos. Neste caso, ele pode formar quatro loops, mas fica mais estranho. Olha para isto. Eu vindo para este Ártico. Vejamos o terceiro exemplo enfraquecer. Defina uma função chamada vazia. Não há nada nele. Também podemos tocar uma propriedade para isso. E se olharmos, sairmos, arranjarmos uma função com uma propriedade desligada. Bem, vamos fazer isso alto para ser consistente com tudo o resto. Quão estranho é isso? Você acabou de colocar propriedades em qualquer coisa no casaco Jarvis, praticamente qualquer coisa. É continuar
8. Como criar objetos - introdução: Então nós já temos visto exemplos de objetos brincando com ele, mas eu quero ser mais específico agora. Como criamos objeto? Bem, em outras linguagens de programação, você precisa de um Kloss para criar um objeto. Mas em scripts Java, um objeto como uma entidade autônoma não é classes necessárias. E se você realmente dar um passo para trás e olhar sob o capô, script
Java não tem uma classe verdadeira. Tudo em JavaScript é praticamente objeto. Então a questão é, será em Como criamos um objeto? Nós realmente vimos algumas maneiras pelas quais criamos objetos, mas eu quero enfatizar isso. Não há uma maneira correta de criar um objeto. Isso é certo. Você pode escolher. E isso é o que torna o Javascript muito dinâmico e incrível. É muito flexível. Você deve usar qualquer método que se adapte à sua situação. Nesse momento, eu quero todas as diferentes maneiras de criar um objeto em JavaScript. Bem, eu posso dividi-lo em quatro. Você coloca objeto, objeto construtor de objeto
literal que cria, e você tem essa classe de Ano Novo, e eu acho que é natural. Vamos começar com o primeiro 1 no objeto literal, um objeto literal também é conhecido como um objeto, e Michelle Isar, a razão pela qual eles chamam de inicializar é para ser consistente com outra terminologia. Usando outras linguagens de programação como C Plus plus e criar um objeto de fogo objeto. Literal é uma das maneiras mais fáceis de criar uma variável no script Java. Tudo o que você precisa fazer é encontrar valores de propriedade dentro poderia abraços. Já vimos isto. Fizemos exemplos em que dissemos, Vamos bicicleta igual e tivemos essas chaves e tudo o que fazemos dentro das chaves, usamos um comum para separar vários poços de valor chave. Vamos dar uma olhada em outro exemplo de como criar um objeto por objeto, sintaxe
literal.
9. Como criar objetos: 1. Literal de objetos: por exemplo, Número um. Vamos apenas torná-lo o mais simples. É ótimo e Inti objeto. Lembre-se de como definir um objeto literal. Tudo que você precisa não é abrir,
fechar, fechar, marca
encaracolada. Então nós fizemos. E isso agora é literalmente um objeto. Se eu consolar, carregar isso, teremos um objeto vazio, que é o quê? A mostra azul? Ok, que tal criar um objeto com uma propriedade? Então vamos criar a amante Go objeto uma propriedade. O cão igual abertura e fechamento colchetes encaracolados para encontrar um objeto. É um tem um nome e é um o nome é Vamos ver. Então agora definimos um objeto, um objeto com uma propriedade. E lembre-se, propriedades são bem, eles são apenas valor chave pago aqui as chaves, nome e o mesmo foi pateta. Constantemente obtemos nosso objeto. Mas deixe-me enfatizar uma coisa aqui. Você precisa especificar uma chave e um valor para que isso funcione. Caso contrário, você será jogado dentro. Eric, deixa-me dar-te um exemplo. Então você tem que especificar a chave de nascimento e Betty. Sim, se eu for o animal principal, ele chama o tipo e eu deixo. Eu tenho uma era porque é o tipo dele não está definido, então eu tenho que atribuir valor a ele. Então deixe-me dizer memorando agora. Eu não recebo quaisquer erros e até mesmo torná-lo mais simples em que também um rápido se eu ir deixar animal também. E eu vou apenas digitar. A mesma coisa acontece. É Este tipo não está definido. Então você vê, eu tenho que especificar ambos para que este código seja muito este. Apenas apague estes rapidamente. E quanto aos métodos que usam objeto? Sintex literal? Vamos criar um objeto com um minuto. Vamos chamá-lo de Bem-vindo, Sra. Say, você quer dar uma mensagem de boas-vindas ao usuário Mensagem de boas-vindas. Estive entre colchetes, define um objeto. JavaScript sabe que isso agora é um objeto. Agora é um método tetra e é legal. O método dizer oi E este mito será uma função e torná-lo apenas significa uma função, pela forma como uma função está fora de um objeto e omitido está dentro de um objeto. Mas a mesma coisa e digamos que temos que passar leva a essa função como um argumento, e vamos entrar em funções em uma das próximas seções Então não entre em pânico se você não sabe o que quero dizer. E é apenas o log do console que leva até a tela. E para deixar mais claro, só quero entrar em Sim, entendemos o que estamos fazendo. Isto é e objeto com um método. Isso são excessos. Método Mensagem de boas-vindas ponto lembrar? É assim que nós excesso de metros e propriedades dizer oi é o que nós chamamos e ele precisa ser passado um fluxo para que dizer olá. E aí está. Seu registro do consulado Olá para a tela. Ok, mas até agora nós só estávamos lidando com propriedades ou nós estamos apenas lidando com métodos. E se combinarmos propriedades e métodos? Não há problema, diz seu objeto com propriedades e métodos. Então é definir um objeto pessoa nesta pessoa tem um primeiro nome. Essa pessoa tem uma idade bem chamada, e é uma mensagem. E ele disse que isso pode apenas consolar canecas. Este primeiro nome que criamos é este Age é antigo, então eles não têm Nós temos um objeto pessoa com propriedades e essas propriedades de
ervilhas de valor chave , então eles não têm Nós temos um objeto pessoa com propriedades e essas propriedades de
ervilhas de valor chave,
e nós também incluímos um método de mensagem que está tentando acessar que uma pessoa que executamos e assim que fizermos isso executa uma função. Espero que você esteja começando a ficar um pouco mais confortável com objetos e como nós os criamos em Jarvis Coat. Isso não é muito complacente ainda porque esta era apenas uma maneira de criar um objeto. Agora vamos discutir outro.
10. Como criar objetos: 2. Construtor: Estamos ficando muito familiarizados com a criação de objetos. Dispare a sintaxe literal. E como mencionei, é a maneira mais fácil de criar objetos em JavaScript. Mas o segundo tipo é conhecido como um construtor de objetos, e esta é uma maneira alternativa de criar um objeto. Mas não se preocupe, o construtor significa fazer ou construir algo para não se intimidar pela função
construtor palavra . Porque tudo o que é é que é uma função normal que apenas cria um objeto. Não sei por que temos que ter todo esse trabalho. Eu acho que ele simplesmente simplifica as coisas em vez de chamá-lo de uma função que criar objeto , você apenas chamá-lo de uma função construtiva. Certo, então como isso funciona? Bem, para usar o objeto, construção tem que passar por dois estados. Um que você tem que definir seu objeto meio que faz sentido. Você tem que definir o que você quer criar e você tem que realmente
construí-lo . Você tem que chamá-lo e você fazer isso com a nova chave iria dar uma olhada em um
exemplorápido exemplo
11. Exemplo de função de construtor: construir suas funções que veem alguns exemplos. Vamos apenas os alunos construírem funções. Próxima ordem. Para um exemplo. Lembre-se qual é o primeiro passo na criação de uma função construtiva que é definir seu objeto real. Então vamos definir o objeto. Isso é seis. Você vai aqui, cola um, encontra o objeto, e para definir o objeto, precisamos nomeá-lo. Vamos chamá-lo de objeto de moto, e você notou que eu incluí um maiúsculo M Capital mais tarde. São duas convenções padrão, então em você e eu estamos passando pelo código e vemos uma
letra maiúscula . Sabemos imediatamente que é um objeto e foi construído através da função construtora . E, digamos que a moto, cor
dele e você quando foi feita, é na verdade também definido de ano. Vamos apenas colocar nome,
nome e cor, nome e cor. E o que vamos fazer é que quando criarmos um objeto onde você deseja definir propriedades nele imediatamente quando criarmos, então é por isso que queremos criar esse nome. E esse nome será o nome do objeto que realmente criamos mais tarde, e queremos fazer isso igual ao que pausamos na função na construção, que neste caso, seu nome. Então também queremos que essa cor esteja chegando. Esse é o Steve Um. Lembrem-se do que nos apegaram era chamar a função. Ouça, você está com ele. Então vamos fazer isso. Isso é definir uma variável. Vamos chamar a variável de minha marca e dizer que isso é igual a motivo mudo. E vimos acima que requer dois argumentos e nome e cor. Então vamos dizer que os motociclistas uma Yamaha e é preto e apenas dar um passo para trás. Só entenda o que fizemos a você. A primeira dica foi definir objeto, e você pode pensar nele como um plano. E nós dissemos em nosso plano quando isso é chamado, ele vai ser chamado com dois argumentos, nome e uma cor. Queremos que o nome das novas variáveis seja igual ao nome foram forçados a ele, e a cor das novas variáveis seja a cor com pasta. E, em seguida, no segundo passo, nós realmente criamos esse objeto. Chamámo-lo com a nova palavra-chave. Agora, se nós conectarmos o meu como nós temos um nome apropriado chamado Yamaha e cor chamado Preto. Quão incrível é isso? É feito automaticamente para nós porque usamos um país construtor. E o que você acha que vai acontecer se nós consolarmos o tempo fora da minha vida? Bem, é um objeto. Claro que é um objeto que lidamos com a criação de objetos aqui. Mas agora, antes de seguir em frente, há outra maneira que podemos criar um objeto usando uma função construtor que está usando
scripts Java no objeto parafuso construído. Mas vou ser aberta e honesta. Agora é um pouco mais complicado, leva mais tempo para escrever, e eu prefiro algo assim. Mas por uma questão de completude, deixe-me mostrar-lhe como funciona. Então, isso agora está usando scripts Java no objeto parafuso construído. Vamos fazer isso agora e para sermos excitantes, não
vamos usar uma moto. Vamos embarcar nisso. Agora vamos fazer um objeto de pessoa. Você só ampliou um pouco como uma pessoa. Igual novo objeto. Isso é o que esse objeto é. Um parafuso de método no próprio script de trabalho. Isso é um construtor de objetos, e eu vou prová-lo para você por uma pessoa olhando console. Você pode rasgar para se opor, e se formos digitar fora pessoa. Você vê que é um objeto. O objeto foi criado. Mas agora a dor com isso é que para ed metros e propriedades, temos ficado manualmente por isso é melhor nome. Nós iríamos pessoa Dr Name meninas dinheiro Ouça, não idade é igual a 35 Agora, quando você aconselhar registra-lo, o objeto está recebendo carne, mas é uma dor que é um pintado foram fazer isso manualmente. Então, se é uma dor fazer isso manualmente, como faríamos exatamente a mesma coisa usando a função construtiva que fizemos acima com moto? Por que você não pausa um vídeo atrás? Peneiramento Ok, vamos fazer isso usando uma construção a função Mesmo está acima, mas com uma função de estrutura e você vai ver o quanto mais intuitivo e fácil é. Qual é o primeiro passo para a função de construtor? Isso é certo. Você definiu o objeto. Então vamos definir que é pessoa e pessoa vai pegar um nome em uma idade e seu nome será nome nesta idade será uma mudança. Agora queremos criar um usuário. No exemplo acima, chamamos esse uso de pessoa, Então vamos dizer que essa pessoa a que vem junto e tudo o que precisamos fazer agora e isso é um doente e ficar com a função construtiva. Você se lembra o que ele faz? Isso é certo. Apenas chamando essa definição com a nova palavra-chave. Então dizemos que esta é uma nova pessoa e que requer dois argumentos sobre o nome. Refrigerá-lo e uma idade, digamos 35 e console pessoa log para É uma comunidade já atribuído os nomes de propriedade, nome e idade para este objeto. Hucles EUA. Espero que esteja se divertindo tanto quanto eu, mas ainda não terminamos. Essa é a boa notícia, então
12. Faça uma pausa: fazer. Eu quis dizer e você conhece o filho. Isso foi doce. Sucesso doce Bem feito para levar isso a sério. Sou apenas uma das piscinas. Retire uma vara do que quer que estejamos aprendendo, que são objetos. E eu só queria dissecar Obrigado por chegar tão longe e bem feito por chegar tão longe. Sabe, maioria das pessoas viveu na vida. Não coloque esse trabalho extra duro. Não vá essa milha extra para conseguir um quadril. Então, bem, então estou muito,
muito impressionado. Ok? Aproveitando o curso. E eu só queria dizer que você pode até ficar frustrado no sentido de que, você sabe, estamos aprendendo sobre projetos aprendendo mãe com lixo. Grandes objetos atingiu a dívida funções. E você pode estar pensando em jardas todas boas e boas, como se criássemos objetos de pessoas. Criamos objetos de moto. Mas como extraímos esse valor e colocamos no topo? Como trabalhamos com filha a partir de uma interface de usuário usa em nossas vidas? E deixe-me dizer que você vai chegar lá. Preciso aprender a andar antes de correr. Você precisa entender objetos, como eles funcionam, saídas, propriedades, seis propriedades com as quais trabalho, e eu só quero dizer que vamos chegar lá. Vamos entender como tudo se encaixa. Mas por enquanto, aproveite para sentar. E eu só queria que este vídeo fosse um pouco de um vídeo. Vá indo. Vá pegar um café. Vou cozinhar o que lhe convém, e vejo-te na próxima palestra.
13. Função de construtor de o Litro: Ótimo que estamos entrando em nós. Mas agora você provavelmente está se perguntando qual é a diferença entre um construtor de objeto versus um objeto literal? Sabemos que um construtor de objeto distorceu o objeto de descobertas, e fazemos isso com a palavra-chave function e, em seguida, um objeto literal só precisa que eu
estive fechando colchetes. Ambos os métodos sobre a variável JavaScript criada chamada pessoa. Uma diferença principal, porém, é o que você pode fazer com essa variável. Com uma função de construtor, você pode criar várias instâncias com a nova palavra-chave. Mas com a notação literal, você obtém apenas um único objeto. Não, isso é apenas teoria. Chega disso. Agora vamos código. Vou te mostrar o que quero dizer.
14. Instantiation vs Singleton: Quero que olhemos em Stan Shih ation contra o singleton, aproximando-se um pouco mais de detalhes e de uma forma que você possa entender que realmente vimos. Uma das principais diferenças é que, com uma função construtiva, você pode instantaneamente quantos objetos quiser, e cada objeto será independente. Será um novo objeto, no entanto, com o objeto. Pequeno Syntex. Quando você vai e cria um objeto, ele sempre faz referência ao mesmo objeto original. E isso é conhecido na indústria de programação, e você pode Google que singleed objeto literal Syntex, você literalmente criando um singleton. Tudo o que significa é que um objeto só pode ser criado uma vez, e que qualquer referência a esse objeto no futuro, mesmo se você criar um novo, ainda se refere ao mesmo objeto. Deixa-me mostrar-te o que quero dizer. Então aqui nós vamos estar criando um construtor versus o e vamos primeiro olhar para uma função
construtiva. Está bem, fixe. Vamos entrar nisso. É criar um objeto de pessoa, e vamos supor que queremos dar certas pessoas locais para este objeto pessoa, por exemplo. Digamos que queremos que o status de associação seja falso e, em seguida, apenas uma vez que o usuário
passa por todo o processo de inscrição não se torne realmente verdade. Ele também é dar-lhe um nome padrão, e ele é até mesmo colocado em um método no Deixe-me mostrar a você o que eu quero dizer. Então vamos criar um fogo, a função construtiva. E lembre-se o que os dois passos todos o que é o primeiro? É certo. O primeiro passo é definir objeto. Usando a tecla de função seria. O segundo passo é chamar esse objeto. Então vamos fazer a primeira dica, e isso é definir objeto. Vamos ligar para a pessoa do objeto. Digamos que esse status de associação é falso e dirá esse nome. Vamos dar um nome padrão, querida. E agora vamos colocar uma mensagem também para torná-la mais interessante. E vamos chamar esse método de conversa. E neste método, vamos apenas log de console e usará modelos neutros. Já passamos por isso antes. Sabemos o que são, e vamos dizer que o status de membro fora do nome dessa pessoa é esse status de membro. Então, lá temos. Temos o nosso objeto de função construtiva tudo configurado, pronto para ir você está no que foi o segundo passo. Como é que nós Como nos acedemos? Como criamos um novo objeto que ataca Winstanley? No entanto, você precisa de Teoh Instant aqui, o objeto antes de poder usá-lo. E digamos que o usuário vem em nosso site. E por falta de uma palavra melhor, vamos chamar pessoalmente um que ligue de você quem é e agora o que é legal é termos acesso a todos esses objetos. Já vimos isso antes em nosso exemplo. Se eu cancelar junto pessoa quando sairmos da conversa, lá vamos nós os registros do console. O status de membro de um é falso, e isso é direto para fora dos chefes. O que é realmente legal sobre funções construtivas? Mas deixa-me mostrar-te. A diferença é agora, porque é disso que se trata esta eleição. Digamos que apareça uma segunda pessoa. Pessoa 2 é igual a uma nova pessoa. E digamos que essa pessoa passe pelo processo de registro e ele mude seu nome e seu nome não é Wally. É o John. Quando você passar por isso, cada pessoa será, e este é o ponto crucial dela única. Então, se temos uma pessoa, não fale. Temos o status de membro do que é falso. Mas agora, se tivermos alguém para não falar, o que esperas que acontecesse? Isso é certo. O status de membro fora do John é falso. Então agora nós literalmente criamos dois objetos diferentes. Não são independentes disso. Eu posso até ir pessoalmente e eu poderia ir pessoa para o status de membro. Digamos que eles passam por todos os membros que pagam as taxas de adesão. E agora o status de membro é verdadeiro. Você tem dois objetos distintos. Como nos chama e agora você provavelmente está se perguntando, OK, chamar funções construtivas. Você tem isso como se estivesse fazendo sentido. Mas como? Como objeto, Syntex
literal funciona. Deixa-me mostrar-te. E deixe-me mostrar o que quero dizer com o fato de que o pequeno Syntex cria. Singleton manteve sua grande abordagem de sintaxe agora literal. E vamos começar a definir nosso objeto. Temos uma pessoa mas status de membro e vamos definir isso como falso como valor inicial. Temos um nome que nos vamos sentar. Wally é o valor inicial e temos nossa função de conversa. Vamos falar sobre mim e tudo o que faz é o console registrar o status de membro deste nome é isso em Michigan. Então, eles não têm. Estes são objeto literal objeto que acabamos de criar. Mas como isso é diferente da primeira vez? Nós apenas fizemos. Bem, é um comentário. Toda essa resposta. Nós não ficamos confusos. Eu estava saindo de tudo e parou. Olhando para esta casa é diferente. Bem, a primeira diferença é que podemos usar este objeto diretamente do bastão. Não temos que ficar aqui primeiro. Deixa-me mostrar-te o que quero dizer. Então essa pessoa, podemos acessar o método de conversação diretamente. Nós não temos que ser grandes pessoas. Um é igual a uma pessoa nova com o objeto. Pequeno Syntex. Podemos usá-lo imediatamente. E o que quero dizer com isto é um singleton. Deixa-me mostrar-te. Digamos que queremos criar Tom. Ele usa esta construção objeto como fazemos isso. Bem, você não pode simplesmente ligar para a pessoa da mesma forma que fizemos com a função construtiva. Não podemos dizer que o Tom é igual a uma pessoa nova. Isso vai jogar era. E sim, procuramos pessoa não é um construtivo literalmente nos disse. Sabemos muita coisa fazendo isso, mas que tal apenas dizer Bem, deixe Tom ser igual a pessoa. Ok, então parece que podemos fazer isso é o registro do console Tom. E então as cabeças existem. Todas essas propriedades e métodos chamam. Está tudo bem, mas vamos tentar mudar o nome do Tom. Digamos que Tom é o nome dele e você adivinhou que é Tom. E agora vamos criar uma segunda pessoa. A segunda pessoa aparece. Liga à Cindy e a Cindy diz: “
Está bem, Está bem, fixe. O nome da Cindy é Cindy. O que acha que vai acontecer quando acessarmos o método de conversa do Tom e me convencermos da Cindy? Bem, deixe-me primeiro fazer o medidor de conversa na Cindy. É mais para falar. Deixe-me apenas Cônsul Locus Resposta. Vega confusa. Cindy disse que o status de membro da Cindy é falso. Faz sentido. E se eu acessar isso? Fale comigo, Tom, venha turnê? Não, diz que o estatuto de membro da Cindy é falso, por isso está a referir-se à Cindy. E este é o ponto que estou tentando fazer com o objeto. Uma pequena frase é que ele está sempre trabalhando com o objeto original, então qualquer alteração que você fizer aqui afetará esse objeto original. Deixe-me apenas dirigir este ponto de vez, dando-lhe mais um exemplo
rápido e rápido. Com a notação literal, você está sempre lidando com o mesmo objeto. Ding ding, ding Singleton. É criar um objeto original. Era o nome original. Simples. Agora vamos criar um clone e Neck apenas é igual ao objeto original. E este clone queremos dar um nome. Então nós fizemos agora é que pegamos o objeto original. Criamos uma nova variável. Deixe-me comentar toda essa arte para não ficarmos confusos. Original que você tem. É tudo o que estamos a tentar fazer. Você só pega um pau. Becker Criamos um objeto original chamado Original, e demos a ele um nome original. Temos algo para encontrar uma nova variável que seja esse objeto. Então você quase pensaria intuitivamente O que deveria acontecer é que você criou um novo objeto no espaço de memória que faz referência a um novo objeto. Então, nesse novo objeto que pensamos ter sido criado, damos um novo nome. Então agora você pensaria que os dois objetos na memória um com o nome virou um do nome original, mas com sintaxe literal do objeto. Este é um ponto. Não acontece assim. Referencia o mesmo objeto. Então, se eu quiser acessar o objeto original e o conselho que não vai olhar para
isso, seu nome agora foi alterado para clonar quem? Esta tem sido uma natureza muito importante. Poucos bilhetes em muito poucas pessoas entendem as diferenças entre o seu continuar porque eu quero mostrar-lhe mais um.
15. Função de construtor de o de objeto Litro - Comentários finais: é claro que com o objeto que função Syntex, você não tem acesso a um construtor. Lembre-se, com uma função construtiva, nós poderíamos realmente passar através de parâmetros em sua construção e sentar-se objeto da maneira
que queremos . Então eu realmente quero mostrar a vocês o que isso significa. Vamos dar uma olhada. Digamos que, com uma função de construção, podemos construir nosso Jake com perímetros. Temos o chefe nisso. Deixe-me dar-lhe um exemplo que diz, nós temos objeto e é apenas chamá-lo site euro e nós pausar em nosso euro fora da Web. Não podemos dizer que o seu velho é igual ao euro. Passamos para ele e digamos que queremos criar um método. Queremos mostrar o euro e o que isso faz. São apenas registos de consola? Esta Europa? Muito simples. - Nada. Nada muito complicado. Agora definimos nosso objeto. Qual é o segundo passo ao usar a função construtiva? Isso é certo. Precisamos chamá-lo com a nova palavra-chave. Vamos definir uma variável, e é chamado do meu lado fraco, e é apenas dizer que é um novo site e está custando o euro e dizer, Este é o meu choro, eu ponto com e nós fizemos. Nós literalmente construímos toda essa função. Temos um método econômico chamado Este novo site e a função construtor nos permite poss variáveis. Se formos ao meu site e vamos mostrar o seu tudo isso deve console, este é o meu site ponto com para a tela. Deixe-me começar mais rápido e eles têm agora com um objeto literal, nós não temos essa quantidade de flexibilidade. Então, o que as pessoas fazem para contornar é que você tem que Boldin em sua função e você não tem que chamá-lo. Mas é apenas convenção nos trabalhos de programação puxados. Deixa-me mostrar-te o que quero dizer. Então, como criaríamos isso? Talvez você possa até pensar um pouco antes de eu lhe mostrar a resposta. Mas como você criaria a mesma Síria com um objeto? Sintaxe literal? Você vai ser um pouco criativo porque você vai ter que criar uma função que você pode chamá-los passando um perímetro 321 Vamos ver isso agora. Então, com um objeto literal, você não pode ter um construtor, o que significa que você não pode inicializar. Você é eu amo Jake, a menos que isso seja importante. Pelo menos você termina sua própria função innit. É por isso que vou passar. Não é assim que fazemos isto. Bem, vamos começar a criar este objeto. É tarde, Waits em iguais. Ele é criado em sua função. Esta função toma um parâmetro e você adivinhou que leva um ano de idade e, em seguida, tudo o que
queremos fazer é que queremos sentar esses objetos. Estão todos no euro com Boston. Isso parece estranho. Mas esta é uma maneira de contornar todo o construtor, pausando em variáveis e inicializando seu objeto quando você criá-lo. Lembre-se, com objetos neutros, temos um segredo. Cada valor chave pagar com um comum e a segunda propriedade que queremos neste é realmente um método que queremos. O mesmo método perdeu. Mostrar o seu e que é apenas uma função onde nós console log este seu próprio. Então, aí está. Acabamos de criar um objeto com um parafuso dentro e função, e isso está ficando bastante complicado. Então não se preocupe se você não está entendendo completamente, mas
você vai entender, então agora como vamos usar isso agora? Bem, podemos acessar a função interna para que possamos ir ao site e podemos acessar a função interna e ter nosso próprio costume que você está em. Não venha. Então agora corremos função qual assento que este euro igual ao nosso euro personalizado. Então, quando nós método excessivo mostrar o seu próprio, é feito o nosso próprio costume. O seu próprio console recebe. Olhe para a tela, mas você pode ver que não é tão intruso de usar a função construtiva, é por isso
que você deve usar a função construtiva. Se você vai passar em um monte de parâmetros e você tem um monte de métodos de aparafusamento e coisas
complicadas dentro de seu objeto, é melhor usar essa função construtiva. Mas se você quiser trocar um objeto simples, se você propriedade, mantenha qualquer ervilha. Isso é perfeitamente bom de usar. Objeto. Sintex literal. Você deve usar o que você quiser usar é o que eu estou recebendo. Isso não importa. Lembre-se, não
há um jeito certo de fazer algo. Espero que tenha sido informante por enquanto. Ainda temos outras maneiras de criar um objeto. Vamos passar por cima. Olhe para eles agora
16. Como criar objetos: 3. object.create(): ainda outra maneira de criar um objeto é com o objeto got create método. Usando objeto que cria cria um novo objeto, mas ele usa outro objeto como seu protótipo. Ei, o que eu quero dizer? Não vamos entrar em protótipos agora porque quero que nos mantenhamos focados. Nós vamos ter uma seção inteira, uma seção bônus sobre protótipos, e eu vou estar te levando através disso caso você tenha a coceira que você pode pensar. Um protótipo é um objeto a partir do qual outros objetos podem emprestar propriedades e métodos que eles precisam. Só quero mostrar rapidamente o que é um protótipo antes de seguirmos em frente. Porque senão eu sei que é como eu. Estarei ensinando, não compreendendo. E eu vou querer saber. Então eu pensei, deixe-me mostrar rapidamente. Então vamos criar uma função construtiva e é legal pessoa. E é só dizer que este nome é igual a Wadi e lembre-se dos doentes e manter uma
função construtiva . Isso é certo. Nós definimos uma nova variável e nós a instantamos. Esse objeto disse que foi criado usuário e disse que é igual a uma nova pessoa. Então olhe para este nome de usuário é aquele que sabemos que porque ele é usado a função construtiva que já está configurada para ele. Se eu apenas registrar o usuário na tela, quem nós poderíamos obter? Obtemos esse objeto pessoa com valor de propriedade, valor de
nome, pagar, fazer cenas. Mas se eu abrir esse objeto Julius, pegamos uma propriedade do produto e eu abri. Obtemos uma função construtiva que aponta para esse objeto de pessoa que definimos. Isso é tudo função construtiva, e então tem essa outra propriedade de proteção. Isso é o que eu quero dizer com protótipos. Este usuário objeto é herdado certos métodos e problemas porque temos que encontrar uma função
construtiva. Não fique muito confuso ainda. Como eu disse, vamos ter uma seção de bônus inteira. Só queria mostrar rapidamente o que quero dizer. Quando falamos de protótipos, vamos voltar para a palestra. A coisa legal com o objeto fora criadores que você pode criar um objeto sem ter que
definir a função construtiva. Isso significa que você não precisa da nova palavra-chave. Então, como é que o criamos? Bem, é preciso dois argumentos. É preciso um argumento de protótipo, que é obrigatório. Tem que colocar em algo porque você tem que dizer a sua maneira objeto recém-criado para herdar seu protótipo de, eo segundo argumento é opcional. Onde você pode definir propriedades, vamos dar uma olhada em alguns exemplos.
17. Exemplo #1 de como usar o object.create(): Eu tenho o console aberto novamente, e eu quero ver alguns exemplos sobre objetos. Criar nossos trabalhos, o que o produto para cima significa. A primeira coisa que você precisa saber é que o método de criação do objeto doc tem que tomar um protótipo. Lembre-se, levou dois argumentos. Você tem que incluir um protótipo. O que acontece se não o fizermos? Bem, vamos dar uma olhada. É definido um cão objetos Variáveis não criam o que acontece agora. Begin era tipo Air Object Prototype pode ser apenas um objeto ou agora, ok, qual é o objeto mais simples que podemos criar? Vamos fazer um para matar um console. É ótimo, outro objeto de cachorro. Mas desta vez eles diriam Objetivo, criar. E é apenas passado. Não, lembre-se, podemos ou Pasta. Agora um objeto. Somos pessoa agora e parecemos um cão. É literalmente criado um objeto vazio. Mas agora não abrimos este objeto. Não devemos ter nenhum protótipo porque definimos seu protótipo como nada e
abrimos . Não temos propriedades neste objeto. Nenhum predador que tivéssemos
direito, direito, mas não significa que não possamos trabalhar com ele. Podemos trabalhar com isso. Nós podemos ir. O nome do cão é igual ao nome fofo anunciado é Fluffy. Quando um cão loga console é apenas propriedade e valoriza seu nome apenas força fofo. Seria legal se pudéssemos ficar ainda mais complicados aqui. Como adicionamos protótipos? Deixa-me mostrar-te outra vez. Isso é limpar o console. Certo, as
primeiras coisas primeiro. Lembre-se, com o objeto para cima criar. O primeiro argumento que você pode passar é o protótipo, e esse protótipo, aprendemos, tem que ser um objeto ou não. Então vamos criar um objeto. Vamos apenas fazê-lo com uma maneira literal de objeto. Então vamos um cão proto igual, e é encontrar um método chamado Lobo e Lobo só precisa de leite não vendido. Esta coisa que ainda não definimos soou, mas vamos. Você vai ver o quão bem feito o ego. Então temos que encontrar o nosso cão proto objeto que queremos ser acessíveis a partir de qualquer objeto que usamos com este protótipo. Então vamos criar um cão que o cão igual a RG dot criar, e ele está passando este protótipo que acabamos de criar, e sabemos que será válido porque é um objeto. O que vai acontecer? - Não. Bem, não
é um cão de guarda. Você pode ver que é um objeto vazio e está vazio porque não definimos nenhuma
ervilha de valor de nome . Mas se abrirmos isso, agora
teremos um objeto protótipo. E se abrirmos isso, parte disso é esse lobo função que definimos. Quão incrível é isso legal, certo? Você tem muito mais flexibilidade porque você pode literalmente decidir onde você quer que os protótipos pertençam, quais objetos? É incrível, e vou deixar começar a acessar esse método de lobo. Obviamente, se você apenas lobo agora, ele vai voltar ao encontro porque nós não definimos este som de ponto. Não temos uma propriedade de som sobre o cão. Isso é um cão. O som é igual a lobo. Agora devemos ser capazes de fazer o cão de chamada olhar e ele vai, morcegos
lobo. Você realmente notou que teria sido legal se nós pudéssemos ter passado o valor do som quando nós realmente criamos o objeto cão? Sim, nós tivemos que primeiro criar uma coisa. Tivemos que ir cão ponto som e ver a propriedade fora do cão para ser o som que esfriamos. Se pudéssemos ter feito isso direto da cama, vamos ver como fazer isso. Não é assim tão difícil. Lembre-se o que o objeto me criar que temos o parâmetro opcional e você pode passar em seu valor. Bem, vamos fazer isso. Deixa-me mostrar-te como funciona. É um cão que vem. Digamos que o dinheiro apareça e chamámos um protesto de cães. Então vamos um cão para vir junto. O Cão Dois vem junto. Vamos criar um objeto. O protótipo Queríamos ser o protesto cão, mas o segundo argumento queremos passar em um valor de propriedade e você tem que fazê-lo na forma de um objeto. Abra as chaves. Agora queremos que o nome da propriedade seja som e a sintaxe pode parecer estranha, mas você só precisa aprender a cumprir as regras do script Java. E isso é que precisamos de outro objeto agora porque você pode ver que há algumas
propriedades diferentes sobre isso, mas nós queríamos valorizar ser Bow Wow, não Wolf Wolf. Este é um cão forte, nome
Bow wow. Você pode fechar todo o objeto, que é um segundo argumento. Feche os suportes para terminá-lo e estamos prontos. Nós literalmente em nosso passado em cão soou para cão para imediatamente tem acesso a off. Desculpe. Isso era cão cão lobo cão para Wolf deve obter poder. E tem. Então este é o objeto não criar você. Aprendi uma nova forma de crédito. Objeto onde você tem a flexibilidade de criar seus próprios protótipos que você passa para o objeto.
18. Exemplo #2 de como usar o object.create(): mais um exemplo de objetos cria. Eu só quero dirigir este ponto para casa. Quanto mais trabalharmos com ela, a guerra começará a se sentir familiarizada com ela. Quanto mais confortável você vai ficar, e quanto mais isso você vai ficar com o fato de que
não é uma maneira correta de criar objetos de várias maneiras. Legal. Vejamos um exemplo. Isto é um objecto. Crie a primeira coisa que quero que se lembre. Então, isso deve dizer exemplo. Uma é que você tem que passar um objeto. Oh, não, como o protótipo e já vimos isso. Então, se formos pessoa igual a objeto criar e não passarmos seus argumentos, vamos obter ERA por causa do protótipo que só pode me ser um objeto. Ou agora sabemos que somos apenas um exemplo do que não é o exemplo prático de como podemos usar , opor ou criar funcionários práticos. O exemplo. Digamos que esta é uma empresa de private equity que tem várias empresas sob sua propriedade e quando os funcionários moost fora dele uma vez que seu produto até ser baseado em qualquer lugar que empregado está empregado em qual empresa. Então precisamos de alguns protótipos diferentes. Digamos que esta empresa de private equity ame animais. Então, a única empresa que possui chamada Fábrica de Cães e Outras Fábricas é chamada Cat Factory. Vamos criar a Companhia 1 chamada Dog, e lembre-se como o protótipo tem que ser um objeto com Mel. Então vamos criar esses protótipos na forma de um objeto e problemas objeto. Literal. Sintex. Vamos definir um cão. Propriedade Proto. O próton do cão. Lembre-se de objeto, sintaxe
literal. Tudo o que precisamos é abrir, fechar chaves. Isso é isso. Nós criamos um objeto e sua dizer este proto Então. Um empregado trabalha aqui está trabalhando para uma empresa chamada Dog Century, e é criar uma empresa muito velha fábrica Cat. Processo semelhante. Vamos criar protesto de gatos. Eu estive fechado. Chaves significa que definimos um objeto, e é digamos, o nome da empresa. Chama-se Árvore Kit. Sabe, digamos que temos um empregado que trabalha para cada empresa cria para você. Vamos deixar os empregados um. Ele trabalha para o cão, por isso queremos que o cão proteja os empregados de outro. Um deles automaticamente tem acesso aos produtos da fábrica de cães. Sabemos quando os chamamos, e registramos que ele terá propriedade da empresa que está definida para a fábrica de cães e que é dado Pour You um nome. Frank e você beijaram. Há outro empregado para, e este empregado é parte do protesto kit, e é dado ponto para um nome fora. A Judy. Já vimos os empregados. Agora vamos fazer logout no console o nome do funcionário e para quem eles trabalham. E é aqui que você verá os benefícios de trabalhar com objeto ou criar. Então, olha, e nós vamos usar o Syntex literal temperado yah. Primeiro, vamos trabalhar. Um nome funciona para funcionários, uma empresa e eles não têm Frank trabalha para a fábrica de cães, e se eu cancelar, carregue exatamente a mesma coisa. Mas os empregados de mudança querem empregar para. Essa é a coisa legal. Julie trabalha para a fábrica de gatos, e é assim que você pode trabalhar com objetos. Doutorado Hope está fazendo cenas, mas vamos olhar para o caminho final. Podemos criar um objeto
19. Como criar objetos: 4. cursos: que percorreu um longo caminho. Tudo bem. A quarta maneira de criar um objeto é com classes especificamente o E H 2015 mais Syntex outras linguagens de programação, por exemplo, Java, Pathan. Eles usam classes para definir objetos, e as pessoas estavam apoiando para entender scripts Java proto type, toda herança. vez, vamos ter uma seção de bônus inteira no topo do projeto e duro. Vai funcionar. Mas é confuso, especialmente se você veio de outra língua que usa a classe Syntex. Então, para resolver este problema em 2015 ETM, um script para anos seis aulas introduzidas e sob o capô e eu quero enfatizar é
script Java . Ainda é a mesma coisa. Esta classe que foi introduzida é apenas açúcar sintático. É uma espécie de revestimento de açúcar, mas não muda o roteiro de trabalho de forma alguma. Os scripts de driver ainda usam protótipos. Ele só agora representa dentro da classe. Palavras-chave de pessoas provenientes de outras línguas não são tão intimidadas por ele. Deixe-me mostrar-lhe como as aulas funcionam
20. Cursos com a função construtor: antes de mostrar um exemplo de como criar um objeto pela classe no texto. Eu só quero falar sobre funções construtivas em um pouco mais de detalhes, porque uma vez que você entender como a função de construção funciona em termos de protótipos, você vai perceber que a classe Syntex é apenas um açúcar sintático em torno de um função. Deixa-me dizer-te o que quero dizer. Vamos apenas criar uma função construtiva. Pessoa velha, que leva no primeiro nome sobrenome e vemos este primeiro nome para ser o primeiro nome, este sobrenome, o sobrenome e tem o método get name onde nós apenas console log usando template literal, Este é o nome dele. Isto é muito intuitivo. Você já passou por isso antes, então sabe exatamente como isso funciona. E o segundo passo para construir a função é que está certo e ficar criando o objeto . Então isso é um usuário é igual a novo Vamos dizer que use um um igual a pessoa mu e este é John, mas e como você sabe, nós podemos obter o nome e deve console logar isso para a tela. Lá vai você, John Doe, está realmente familiarizado com a gente? Isso não deveria ser uma surpresa, mas é aqui que começa a ficar interessante. Se temos um usuário que vem junto e este é Wally Warthog, isso parece OK. Parece bom. Mas nos bastidores você sabe o que está realmente acontecendo quando essa nova palavra-chave é usada? Script Java é literalmente copping uma função construtiva todas as propriedades e métodos de sua função construtiva e sua colocá-la no novo objeto que criamos a nova variável. O problema com isso é que é um desperdício de memória. O espaço torna as nossas aplicações lentas. Você não quer duplicar este método get name. Por exemplo, Uma vez que escrevemos uma vez, por que não apenas tê-lo armazenado em um só lugar? Em vez de ter duplicatas e duplicatas centenas e milhares armazenados absolutamente em todos os lugares e cada vez usado a nova palavra-chave. Esse é o único problema antes. Vou te dizer como consertar isso. Eu só quero mostrar que toda vez que uma função é criada no script Java, o mecanismo automaticamente coloca uma propriedade protótipo em sua função. Deixa-me mostrar-te o que quero dizer. Vamos copiar isto para não termos de escrever outra vez. Controle. Veja, eu só vou abrir o nosso cônsul aqui e colado em hoje é a nossa função no Google Console. Bem, eu vou fazer agora está indo para ir pessoa e eu quero mostrar-lhe que ele tem uma
propriedade privada e que o produto, nossa propriedade é a função construtiva, que é toda esta função instrutor aqui? Isso é o que eles são função construtor é um. Toda vez que você criar uma nova instância
nele, ele vai copiar esses valores para essa nova instância eu posso prová-lo. É um usuário igual a uma nova pessoa, como fizemos antes. E o que lhe chamamos? John, quando consolamos o utilizador do logótipo, damos uma vista de olhos aqui. Nós abrimos. Olha para isto. A função de nome do skit. Este método foi copiado para este objeto. E novamente, ele tem o objeto proto com a função construtor apontando para isso para que você possa realmente ver o são duplicatas estavam reescrevendo. Restauramos e memorizamos coisas que não precisamos necessariamente. E isso me leva ao ponto de toda essa palestra. Como resolvemos esse problema? Bem, o que você pode fazer é adicionar um protótipo a essa função e isso é armazenado uma
vez em vez de ser duplicado em várias instâncias, deixe-me mostrar o que quero dizer. Vamos voltar para o nosso cônsul aqui. Agora digamos que definimos o Usuário Um é John Doe. Vamos nos livrar do usuário para por agora, mas agora queremos em nossa função construtiva em outra propriedade chamada Age. Mas queremos fazer isso no protótipo. Então temos tempo de projeto pessoa porque sabemos cada função criada e script Java. Medicare é uma propriedade privada. E aqui podemos ter uma idade. E digamos que são 35. Você realmente sabe que definimos usuário antes de fazer isso. Mas se sabemos log do console, use uma idade que você pode ver logs do console 35. Tem automaticamente saída para o proto doc. Então, o que é fixe? Agora que a propriedade da idade no protótipo, só
é armazenada uma vez e memória. Dê uma olhada nisso. Se consolar, sair, usar um que você não vê imediatamente a idade não, que é incrível. Mas ele vai ser anexado ao protótipo, e eu vou te mostrar isso. Agora vamos voltar para o nosso cônsul. Sair E e podemos ver aqui se vamos pessoa ponto um ponto protótipo top idade é igual a 35 e agora nós console usuário logotipo novamente. Você pode ver que não vemos um John. São propriedades imediatas. Mas olhe para isso dentro de seu objeto protótipo. Ele tem a idade. Quão incrível é isso? Então isso agora é funções construtivas, protótipos e similares. E não, eu acho que você realmente deve entrar no objeto Kloss. Sintex. Vamos dar uma olhada.
21. Aulas - exemplo: Quem todos nós me pegamos? Isso é bom. Quero mostrar-lhe agora um exemplo de um objeto de classe. Mas antes disso,
quero usar uma função construtiva, e sei que tenho feito isso muito, mas só quero ter uma muito simples. Só para que você possa comparar as diferenças entre os dois. Isso é tudo sobre classes e vamos fazer o exemplo um. Vamos usar uma função construtor. E lembre-se, a primeira dica para construir a função é definir você objeto e vamos apenas fazer uma pessoa
que é passada em um nome, e nós procuramos o novo nome de objetos para o nome que repostar, Então o nome da pessoa vai ser o nome do macarrão. Mas agora, digamos sobre este objeto, esta função contratante, queremos incluir um método de saudação que concretamente usuário pelo nome Now. Um dos problemas que vimos na espada na palestra anterior é que se usarmos a função
construtiva e colocarmos o método dentro de seu corpo, ele fica bloqueado assim. Se formos isto, vamos chamar de saudação igual a função, blá, blá, blá. Se o pusermos lá, vimos isso toda vez que você cria uma nova instância fora. Este método de saudação está sendo armazenado em net new variável, e isso é apenas o vazamento de memória. É só um desperdício do espaço. Diminua o seu sistema. Então o que vimos foi que podemos acessar a pessoa. E no protótipo podemos incluir uma missiva. Velho, ganancioso e é fazer isso não e quase saudação. Deve fazer é apenas consola. Registre o snap. E qual é o segundo passo com uma função construtiva? Isso é certo. Precisamos ficar de pé, mas precisamos chamar objeto. Então, vamos. Permitir que o usuário é igual a uma nova pessoa e ele salva. Nome é engraçado, e porque definimos o método de saudação no protótipo, podemos acessar isso diretamente agora. Por exemplo, use um BT e ele logs de console. Isso é intuitivo e você nos entende. O Denard. É criar o mesmo objeto com a classe Syntex. Agora, antes de eu ir para a aula. Syntex, você
pode ver que meu I D já colocou três pontos abaixo desse dilema. Construção de função. Você pode ver isso? E é um pairar sobre. É esta função construtiva pode ser convertido para declaração de classe, então ele está realmente dizendo para mim Hey, nós podemos converter nossa função construtiva em uma classe mais atualizada em texto. Materiais muito afastados. Objeto muito bem. Vou embora nesse dia para que possa comparar as diferenças. Você vai ver como eles são semelhantes. Então, com a função construtiva, o primeiro passo foi para isso é certo para encontrar o seu objeto. E nós usamos isso usando a palavra-chave function bem com a classe em texto, nós não usamos uma tecla de função. Leia nós usuário. Que palavra-chave rolo de bateria usar o Klasky faria. É uma aula e depois seguimos abrindo, fechando chaves. Você pode ver que acabamos de criar um objeto de classe. Mas agora a única diferença é ela. Com uma função construtiva, nós composto variável nome dentro dele. Bem, com um objeto de classe, temos que definir uma função construtiva e é simples e intuitiva. Você o chama de construtor e os construtores vão tomar em uma variável de nome, e nós vamos colocar o novo nome de variáveis para o nome que passamos para esta
função construtiva . Quem então você tem isso. Essa é a primeira parte que replicamos nessa função construtiva, e você pode ver como semelhante no Syntex. É sempre feito que diferente é que nós definimos um construtor, Perdê-lo dentro desta classe dentro deste objeto. A outra coisa agora que queremos fazer é um no método de saudação, lembra? Bem, quando usamos a função construtiva, tivemos que executar explicitamente o protótipo dela. Mas com uma classe em emitida, você realmente declara em, ele é automaticamente colocado no protótipo. Então ele realmente nos ajuda, teria alocado medicamente métodos da maneira mais ideal. Você não precisa de comentários ou qualquer coisa para separar. Você pode continuar aqui. Vamos definir uma função de saudação, e tudo o que queremos fazer é consolar. Olha, o nome errado e eles não têm. Criamos uma classe que resulta no mesmo objeto do que o que acabamos de fazer acima com uma função
construtiva. Deixa-me comentar esta arte e depois mostro-te. Só quero conflito em nomes de variáveis. Vejamos um exemplo. E o que é incrível nisso é que ainda temos que passar. O mesmo processo é com classe do que fizemos com a função construtiva. Lembre-se, primeiro
passo era definir seu objeto. Nós já fizemos isso. Agora o que? Fique com isso certo. Temos um objeto de chamada. Então deixe o usuário da escola saber. E agora vamos ou em nome Willie. E é muito semelhante ao que temos visto anteriormente. Agora, o método de guinchar. Se vamos usar uma saudação que o console logs querendo a tela Hucles nos. Mas ainda não terminamos. Só quero mostrar-lhe três coisas muito rapidamente. Você sabe como eu continuo dizendo como a classe no Texas é tão semelhante a uma construção funciona Bem, uma função construtiva é uma função. Então você espera que esta classe que criamos também seja uma função certa? Deixe-me provar para você. Então deixe-me dizer, aqui no script Java uma classe é um tipo de função e coloca os métodos que criamos você na propriedade I want to talk. Qualquer dente anterior, é console. Registre o tempo de folga da pessoa e eles o têm. É uma função. Mas qual função é esperado para ser a função construtiva? Lembre-se para a função construtor onde poucos console logado a função, ele realmente iria jogá-lo de volta a função construtiva. Não espere o mesmo aqui, e eu posso provar isso para você também. Então é o registro do console, a pessoa, a última pessoa que acabamos de criar. E sabemos que uma função e seu gosto, isto está dizendo, é igual à pessoa,
o protótipo e o construtor no protótipo e o resultado é verdadeiro. Você pode ver que essas coisas são exatamente as mesmas. E a última coisa que eu quero provar a vocês é que você pode ver minha declaração de busca sobre o ele vê usando a classe coloca os métodos que criamos na propriedade protótipo. Então, quantos métodos devemos ter na propriedade protótipo desta cláusula de pessoa? Bem, eu esperaria um chamado construtor e outro chamado saudação e cortejamento com Java. Script é que você tem em ambos os métodos no objeto global que nos permitem exagerar e provar quais propriedades temos. Então é log de console, vamos acessar o objeto global e há uma propriedade ou um método chamado get property names. Isso é o que queremos. Queremos ver todos os nomes de nossas propriedades em nosso objeto pessoal, mas o protótipo fora dele e você pode ver que nós temos que construir e gananciosos quem? Isto é fixe. Isto está mesmo a ficar avançado. Espero que comece a sentir essas coisas. Quero dizer, apenas pegue um pau de volta. Fizemos muita coisa. Criamos objetos, mentimos a sintaxe literal, funções
construtivas, objeto de criar e agora não disparamos a classe. E não se preocupe se você ficou um pouco confuso com esta última seção agora vamos
entrar em protótipos,
e a entrar em protótipos, próxima seção pode ter um bônus inteiro sobre ele. Mas basta dar um passo para trás e perceber como o em tantas maneiras diferentes e desenhar script para criar objetos. E podemos brincar com essas coisas o dia todo. Mas a verdade é que você deve se sentir confortável com o que mais gosta. Em algumas situações, você vai preferir um em vez do outro. Então vamos continuar. Vamos procurar, tomar um café, pegar uma coca. O que quer que te bombeie. Talvez não um uísque. Você precisa de uma boa mente para essas coisas e vamos continuar. Verei na próxima palestra
22. Como reencontrar objetos e como os objetos podem ser passados em funções: Vamos dar um passo atrás e recapitular o que aprendemos. Criamos objetos de maneiras diferentes. Usamos objeto, pequeno Syntex, construtor de
objeto, objeto de
sintaxe cria no Texas e usamos fechos e texto. Vimos que os objetos de script Java são uma entidade autônoma, e cada objeto contém propriedades e métodos e memoriza as propriedades do objeto. Basta armazenar chave ou nome valores piers e propriedades e métodos podem ser excesso usando o ponto ou o colchete. Notação e objetos são tão dinâmico e script Java que você pode até mesmo passar objetos por referência de uma função para outra. Whoa. Acho que não te mostrei um exemplo disso. Deixe-me mostrar-lhe rapidamente. Agora. Script de trabalho é tão dinâmico e você pode trabalhar com objetos e funções de uma forma tão dinâmica mais do que outras linguagens e uma das maneiras que você pode passar objetos por referência para outras funções. Deixe-me mostrar-lhe o que eu quero dizer objetos podem ser passados por referência em duas funções e para começar, vamos apenas definir uma função e nós vamos ter uma seção inteira sobre a função. Então não se preocupe se você não entende o Syntex. Veja isso. Mas espero que você seja capaz de acompanhar. Chama-se disfunção Mudar o nome e esta mudança principal precisa ser passada. Objeto de usuário não é apenas uma variável. Este é um objeto inteiro que vai ser uma postura. E o nome de usuário será alterado. Teoh, John. E isso somos nós criando uma função. E agora vamos criar um E como devemos criar um objeto? Temos uma de quatro formas mortais. Bem, eu só vou usar o objeto pequeno Syntex porque é o mais simples pessoa igual, abrir e fechar chaves encaracoladas. E isso não criou um objeto de pessoa. E é apenas uma propriedade e essa propriedade será um valor de nome P, e esse é corretamente o nome será Nome em It Soa confuso. Poderíamos dizer primeiros homens, e podemos fazer isso Woody. Agora cancelamos. Carregue isto. Deveríamos ver o objeto. Então você começa a andar. Você vai. Corker está fugindo. Você pode ver quando está no show. Olha, essa pessoa
, tem o primeiro nome de água. E o que acontece se quisermos mudar esse nome? Bem, podemos passá-lo para essa função. Isto é o que eu quero dizer que objetos podem ser passados por referência para outra função. Nós só temos que criar isso se o nome tem que ser o mesmo que nós fizemos aqui. Então deixe-me mostrar como funciona. Tudo o que precisamos fazer é chamar a função. E nesta função, estamos pausando a pessoa. E isso já foi feito. O que? O nome dele foi mudado para John Doe. Você quer ver Oh, conselho, prisão
local, você vai primeiro. O nome agora é John Doe. Bem, é um sistema de cano duplo. Isto é o que eu quero dizer com objetos pode ser possível referência em outras funções. Vamos voltar para a palestra. Ok. Agora que te mostrei esse exemplo, só quero enfatizar isso de novo. Com objetos na forma como os criamos. Não há uma maneira correta de criar um objeto. Vai ter que vir naturalmente para você. Quanto mais você trabalhar com ele mais, você verá onde usar um método de relação de objeto sobre outro
23. Modelo de objeto JavaScript: Agora vamos entrar em um aumento em breve e sobre o tema dos objetos. Eu só quero pegar um pau para trás e mergulhar um pouco mais fundo. Motores de harpa visualizam objetos. É importante porque em um nível muito alto, Todos os motores de script Jolla funcionam da mesma forma é uma massa. É código real. E então há um intérprete em um compilador que otimiza esse código em máquina go. Mas agora eu quero apenas discutir o objeto de escopo do trabalho. É interessante. Nós vamos estar olhando para algumas implementações diferentes sobre isso nos próximos cursos principais. Então isso se chama Mawr. Apenas uma introdução muito rápida no modelo de objeto de script Java. E quando eu clicar neste botão, vamos mergulhar no mais tarde como eu mencionei, isso é apenas uma introdução rápida ao modelo de objeto JavaScript. E o que quero dizer é que como o motor fica em excesso de propriedades do objeto? Porque uma vez que você começa a se tornar um programador incrível, você vai querer entender complexidades de objetos, como o motor realmente diz isso, você vai encontrar sacos e agora você vai saber como consertá-los. São coisas boas para se saber. De qualquer forma, O ponto de partida é saber que as especificações de script Sigma essencialmente define todos os objetos como dicionários. O que eu quero dizer com isso é que você tem chaves em cada objeto, e essas chaves são atendidas para o que é conhecido como as mandíbulas de atributos de propriedade indígena. E, claro, a coisa mais fácil a fazer é começar com um exemplo. Vamos criar um objeto por objeto, sintaxe
literal, e ele tem apenas duas propriedades nele X e y. e lembre-se do que eu vejo. Eles tiram a fala, define esses dicionários, e mapeia chaves para atributos de propriedade. Will As chaves nesta instância são X e y. é o nome da propriedade. Essas são as chaves e essas chaves ou cada referência aos atributos apropriados. E esses atributos de propriedade têm certos valores anexados a eles. Um é o valor fora do nome real fora da propriedade. Nesse caso, X tem um valor de 10. Por que tem um muito de 20 essas três outras propriedades anexadas a este montável, inumerável e configurável? O que eles querem dizer? Bem, muito brevemente certo. Herbal apenas determina se a propriedade pode ser reatribuída. Huma Herbal determina se a propriedade pode ser vista em um loop de quatro E como você pode ver para a nossa variável X, esta propriedade inumerável é definida como true. E isso ocorre porque cada nova propriedade é inumerável por. O padrão é uma exceção a isso, mas discutiremos isso mais tarde. Por enquanto, só sei que em Uraba Lasek verdadeiro por padrão e a última propriedade é unf legível e que determina se a propriedade pode ser excluída. E não se assuste com esses colchetes duplos. Os colchetes duplos é apenas como falar que ele mus especificação script mostra propriedades que não são diretamente expostas pelo JavaScript. Então você provavelmente está pensando, bem, se eles não forem expostos pelo Dr. um roteiro, podemos vê-los? E a resposta é, sim, você pode. Você pode acessá-los com o objeto, obter o próprio método descritor de propriedade. Deixe-me mostrar rapidamente como você acessou isso. Muito bem, muito depressa. Deixe-me mostrar-lhe como nós Connexus thes propriedade atributos inúmeros direitos será configurável eo valor ren Bahar disse, enfraquecer o acesso. Estes não ficam íntimos, disponível o colchete usando o mesmo exemplo que não demos palestra non. Vamos apenas definir um objeto e vamos apenas dizer que existe e em vez de beber vinho,
é apenas ter dores apenas mais fáceis para nós se cancelarmos objeto sem amor e abrirmos aqui e você olha para o protótipo e você olha para a construção Se você rolar para baixo, você pode ver a própria propriedade. Descritor. Este método está disponível? Objetos Tuais. Estamos criando empregos casaco. Incrível, certo? Então vamos usá-lo. Então vamos existir o objeto JavaScript global e, em seguida, queremos obter o próprio descritor de propriedade . Agora temos que encontrar o objeto, que é O B.
J. J. E temos que encontrar a variável que queremos e que é X. Se nós cônsul disso fora do ego, você tem seu valor por direito, inumeráveis e configuráveis.