48 top angularjs interview questions
Lista das perguntas mais frequentes da entrevista AngularJS com respostas detalhadas para novatos e profissionais experientes:
AngularJS é uma das estruturas de desenvolvimento web mais atuais em todo o mundo.
Em quase todas as entrevistas, você terá que lutar contra uma competição acirrada, a fim de alcançar a alta e conseguir o emprego dos seus sonhos. Portanto, você deve se preparar com bastante antecedência.
Para apoiá-lo nessa jornada, elaboramos uma lista das perguntas mais frequentes da entrevista do AngularJS, juntamente com as respostas que seu entrevistador espera no momento da entrevista.
Leia nosso série de tutoriais do AngularJS para mais conhecimento do conceito. Ferramenta transferidora para teste de AngularJS Apps foi explicado em nosso tutorial anterior.
Perguntas mais frequentes da entrevista sobre AngularJS
Abaixo está uma lista das principais perguntas e respostas da entrevista no AngularJS para ajudar qualquer pessoa a concluir uma entrevista com sucesso.
Vamos explorar!!
P # 1) O que você entende por AngularJS?
Responda: AngularJS é uma estrutura JavaScript usada para criar aplicativos da Web ricos e extensíveis.
Ele é executado em JavaScript e HTML simples, portanto, você não precisa de nenhuma outra dependência para fazê-lo funcionar. O AngularJS é perfeito para aplicativos de página única (SPA). É basicamente usado para vincular objetos JavaScript com elementos HTML da IU.
Q # 2) Defina os recursos do AngularJS.
Resposta: Os recursos incluem:
- O modelo (visualização)
- O escopo (modelo)
- O controlador (controlador)
- Serviços
- Filtros
- Diretivas
Q # 3) Definir vinculação de dados.
Responda: A vinculação de dados é uma sintonização automática de dados entre os componentes de visualização e modelo.
P # 4) Distinguir entre expressões AngularJS e JavaScript.
Resposta: Existem várias diferenças entre expressões AngularJS e JavaScript:
- Podemos escrever expressões AngularJS em HTML, mas não podemos escrever expressões JavaScript em HTML.
- Não podemos usar iterações condicionais, loops e exceções em AngularJS, mas podemos usar todas essas propriedades condicionais em expressões JavaScript.
- Filtros são suportados em AngularJS, enquanto filtros não são suportados em JavaScript.
Q # 5) Escreva todas as etapas para configurar um n Aplicativo Angular (no aplicativo).
Resposta: Para configurar um aplicativo Angular, devemos seguir algumas etapas conforme mencionado abaixo:
- angular.module será criado primeiro.
- Um controlador será atribuído ao módulo.
- O módulo será vinculado ao modelo HTML (ou seja, UI ou Visualização) com um aplicativo angular (ng-app).
- O modelo HTML será vinculado ao controlador (ou seja, JS) com uma diretiva ng-controlador.
Q # 6) Quais são os módulos angulares?
Responda: Os módulos angulares definem coletivamente uma aplicação angular onde podemos escrever o código angular. Os módulos contêm as diferentes partes de um aplicativo angular. Um módulo é criado pela função angular.module em angular.
P # 7) Quais são os escopos de diretiva no AngularJS?
Responda: Três escopos de diretivas estão disponíveis no AngularJS.
Eles estão:
- Escopo pai: Qualquer mudança que você fizer em sua diretiva que venha do escopo pai, também será refletida no escopo pai, e também é um escopo padrão.
- Escopo infantil: É um escopo aninhado que herda uma propriedade do escopo pai. Além disso, se quaisquer propriedades e funções no escopo não estiverem conectadas com a diretiva de escopo pai, uma nova diretiva de escopo filho será criada.
- Escopo isolado: É reutilizável e é usado quando construímos uma diretiva independente. É usado apenas para uso privado e interno, o que significa que não contém nenhuma propriedade do escopo pai.
P # 8) Como podemos compartilhar os dados entre os controladores no AngularJS?
Responda: Primeiro, temos que criar um serviço. O serviço é usado para compartilhar os dados entre os controladores no AngularJS de uma maneira muito lúcida, fácil e rápida. Usamos eventos, $ parent, next sibling e controller usando um $ rootScope.
Q # 9) Qual é o ciclo de digestão no AngularJs?
Responda: É uma parte do processo de vinculação de dados no AngularJS. Ele compara as versões antigas e novas do valor do modelo de escopo em cada ciclo de resumo.
O ciclo de resumo é disparado automaticamente. Também podemos melhorar a usabilidade usando $ apply () se quisermos acionar o ciclo de resumo manualmente.
P # 10) Explique as diferenças entre a vinculação unilateral e a vinculação bidirecional.
Responda: A vinculação unilateral é usada para vincular os dados do modelo à visualização sem atualizar o modelo HTML ou visualização automaticamente.
Portanto, para atualizar o modelo HTML, precisamos escrever um código personalizado que atualizará a visualização sempre que um dado for vinculado de um modelo a uma visualização.
Considerando que a vinculação bidirecional é usada para vincular os dados do modelo à visualização e vice-versa (ou seja, visualização ao modelo), atualizando automaticamente o modelo HTML sem escrever nenhum código personalizado.
Q # 11) Diferença entre sessionStorage, cookies e localStorage.
Resposta: As diferenças são as seguintes:
- SessionStorage - Os dados são armazenados para uma sessão específica. Os dados serão perdidos sempre que a guia do navegador for fechada ou após alguma sessão específica. O tamanho máximo armazenado pode ser de até 5 MB.
- LocalStorage - Os dados são armazenados sem data de validade. Os dados só podem ser limpos por JavaScript ou limpando o cache do navegador. O limite de armazenamento é máximo que o sessionStorage e o cookie.
- Biscoitos - Ele armazena os dados que devem ser enviados de volta ao servidor com algumas solicitações. A expiração do cookie varia de acordo com o tipo e duração definidos do lado do servidor ou do lado do cliente. O tamanho máximo armazenado pode ser inferior a 4 KB.
P # 12) Qual é a função de $ routeProvider no AngularJS?
Responda: É o $ routeProvider que ajuda a navegar entre diferentes páginas / links sem carregar separadamente a página / link sempre que um usuário clica em um link.
O método ngRoute config () é usado para configurar o routeProvider.
Q # 13) Qual é a diferença entre $ scope e scope?
Responda: No AngularJS, $ scope é usado para obter injeção de dependência e scope é usado para vincular a View (ou seja, HTML) e o Controller (ou seja, JS).
P # 14) Como os prefixos $ e $$ do AngularJS são usados?
Responda: A variável $$ em AngularJS é usada como uma variável privada, pois é usada para evitar a colisão acidental do código com o código do usuário.
Enquanto o prefixo $ pode ser usado para denotar funcionalidades centrais angulares (como uma variável, parâmetro, propriedade ou método).
Q # 15) Onde podemos implementar a manipulação DOM no AngularJS?
Responda: A manipulação de DOM está em diretivas e, fora isso, não deve existir nos serviços do controlador ou em qualquer outro lugar.
P # 16) Como podemos mostrar que uma variável de escopo deve ter uma vinculação única?
Responda: Para mostrar a vinculação única, temos que usar “ :: ”Na frente do escopo.
P # 17) O que é SPA (Single Page Application) no AngularJS?
Responda: É um aplicativo da web que carrega uma única página HTML e atualiza dinamicamente a página conforme o usuário se conecta ao aplicativo.
Ao usar AJAX e HTML, um aplicativo da web fluido e responsivo pode ser criado pelo SPA sem recarregamentos de página invariáveis. Com isso, podemos criar uma IU responsiva sem oscilação de página.
P # 18) Quantos tipos de vinculação de dados existem no AngularJS?
Responda: O AngularJS oferece suporte para vinculação unilateral e bidirecional.
Em uma forma de vinculação, se alterarmos o modelo de dados, não haverá nenhuma mudança dinâmica que você verá em vista, mas na vinculação de duas vias, haverá uma mudança dinâmica sempre que uma mudança for feita no modelo de dados.
Q # 19) Quais são as diretivas de ligação em AngularJs?
Resposta: As diretivas vinculativas incluem:
- ng-bind
- ng-bind-html
- ng-bind-template
- de não ligável
- modelo ng
Q # 20) Explique as diretivas ng-bind e ng-bind-html.
Responda:
ng-bind : É uma diretiva que substitui o conteúdo do elemento HTML pelo valor da variável ou expressão atribuída.
O conteúdo do elemento HTML será alterado alterando o valor da variável ou expressão.
É como ({{expressão}}) e a sintaxe para isso é,
ng-bind-html : É uma diretiva que vincula o conteúdo ao elemento HTML (visão) de forma segura. O serviço $ sanitize é usado para higienizar o conteúdo para vinculá-lo a um elemento HTML. Para fazer isso, ‘angular-sanitize.js’ deve ser incluído em nosso aplicativo.
melhor bloqueador de pop-up gratuito para cromo
Sintaxe para escrever isso,
Q # 21) Explique ng-bind-template e ng-non-bind.
Responda:
ng-bind-template : Substitui o conteúdo de texto do elemento por interpolação do modelo. Ele pode conter várias marcações de curvas duplas.
Não ligável : Especifica que AngularJS não compila o conteúdo deste elemento HTML e seus nós filhos.
Q # 22) Explique a diretiva ng-model em AngularJs.
Responda: Isso pode ser um salto com o controle de formulário de entrada HTML personalizado (como entrada, textarea e seleção) para os dados do aplicativo. Ele fornece comportamento de validação de formulário com associação bidirecional.
< input ng-bind='expression' />
Q # 23) Defina o método de fábrica em AngularJS.
Responda: É bastante semelhante ao serviço, as fábricas implementam um padrão de módulo no qual usamos um método de fábrica para gerar um objeto que é usado para construir modelos.
Em uma fábrica, um objeto de método é retornado no final, criando um novo objeto e adicionando funções como propriedades.
Sintaxe :
module.factory(‘factoryName', function);
P # 24) O que é a diretiva ng-repeat no AngularJS?
Responda: Ele renderiza ou itera sobre uma coleção de itens e cria elementos DOM. Ele monitora regularmente a fonte de dados para renderizar novamente um modelo em resposta a uma mudança.
Sintaxe:
{{stu.name}} {{stu. grade}}
P # 25) O que é um controlador no AngularJS?
Responda: Um controlador é uma função JavaScript vinculada ao escopo especificado. Angular instancia o novo objeto de controlador e injeta o novo escopo como uma dependência.
Um controlador pode ser usado para configurar o estado inicial do objeto de escopo e adicionar comportamento ao objeto. Um controlador não pode ser usado para compartilhar código ou estado entre controladores, mas em vez desse serviço Angular pode ser usado.
P # 26) O que são filtros no AngularJS?
Responda: O principal trabalho dos filtros é modificar os dados, de forma que possam ser mesclados em uma expressão ou diretiva usando uma barra vertical (é usado para aplicar filtros em um símbolo angular de uma barra vertical que é (|) ou este é o símbolo).
como executar arquivo jar no windows
Um filtro formata o valor de uma expressão para exibição ao usuário. Eles podem ser usados em modelos de visualização, controladores ou serviços, e também podemos criar facilmente nosso próprio filtro. Um filtro é um módulo fornecido pelo AngularJS. Existem nove componentes de um filtro que são fornecidos por ele.
Exemplos: moeda, data, filtro, JSON, limitTo, etc.
P # 27) O que é a diretiva ng-App no AngularJS?
Responda: É usado para definir o aplicativo AngularJs. Ele indica o elemento raiz do aplicativo e é mantido próximo à tag ou.
Podemos definir qualquer número de diretivas ng-app dentro do documento HTML, mas apenas um aplicativo AngularJS pode ser inicializado automaticamente (autoinicializado) e os outros aplicativos precisam ser inicializados manualmente.
Exemplo:
My first expression: {{157 + 122}}
P # 28) O que é ng-switch no AngularJS?
Responda: É usado para trocar condicionalmente a estrutura do DOM em um modelo que é baseado em uma expressão baseada em escopo.
Esta diretiva permite mostrar ou ocultar o elemento HTML dependendo da expressão.
P # 29) Qual é a utilidade de um evento de clique duplo no AngularJs?
Responda: Ele permite que você especifique o comportamento personalizado em um evento de clique duplo do mouse em uma página da web. Podemos usá-lo (ng-dblclick) como um atributo do elemento HTML como,
...
P # 30) O que são diretivas ng-include e ng-click em AngularJs?
Responda:
ng-include ajuda a incluir arquivos diferentes na página principal. A diretiva ng-include inclui HTML de um arquivo externo.
O conteúdo incluído será incluído como nós filho do elemento especificado. O valor do atributo ng-include também pode ser uma expressão, retornando um nome de arquivo.
Por padrão, o arquivo incluído deve estar localizado no mesmo domínio do documento.
ng-click pode ser usado em situações como quando você clica em um botão ou quando deseja fazer qualquer operação. Diz ao AngularJS o que fazer quando um elemento HTML é clicado.
Exemplo:
OK
O código acima aumentará a variável de contagem em um sempre que o botão for clicado.
Q # 31) O que é uma transferência de estado representacional (REST) em AngularJs?
Responda: REST é um estilo de API que opera sobre a solicitação HTTP.
A URL solicitada identifica os dados a serem operados e o método HTTP identifica a operação que deve ser realizada. REST é um estilo de API ao invés de uma especificação formal, e há muito debate e discordância sobre o que é e não é RESTful, que é um termo usado para indicar uma API que segue o estilo REST.
AngularJS é flexível sobre como os serviços da Web RESTful são consumidos.
P # 32) O que são as APIs globais do AngularJs?
Responda: É uma combinação de função JavaScript global que é usada para realizar tarefas como comparar objetos, iterar objetos e converter dados.
Existem algumas funções de API comuns, como:
- angular. minúsculas: Ele converte uma string em uma string em minúsculas.
- angular. maiúsculas: Ele converte uma string em uma string maiúscula.
- angular. isString: Ele retornará verdadeiro se a referência atual for uma string.
- angular. isNumber: Ele retornará verdadeiro se a referência atual for um número.
P # 33) O que é um método de provedor em AngularJs?
Responda: Um provedor é um objeto que cria um objeto de serviço permitindo ter mais controle.
O método $ get () é usado no provedor que retorna o objeto de serviço. O nome do serviço e a função de fábrica são os argumentos passados para o método do provedor. AngularJS usa $ fornecer para registrar novos provedores.
Sintaxe:
serviceApp.provider('logService', function ())
Q # 34) O que é manipulação de eventos?
Responda: O tratamento de eventos em AngularJs é muito útil quando você deseja criar aplicativos AngularJs avançados.
Precisamos lidar com eventos DOM como cliques do mouse, movimentos, pressionamentos de teclado, eventos de mudança e assim por diante. AngularJs tem algumas diretivas de ouvinte como ng-click, ng-dbl-click, ng-mousedown, ng-keydown, ng-keyup etc.
Q # 35) O que é AngularJs DOM?
Responda: Os AngularJs têm algumas diretivas que são usadas para encapsular os dados do aplicativo AngularJs para um atributo desativado dos elementos HTML.
Exemplo: A diretiva desativada por ng encapsula os dados do aplicativo para os atributos desativados do elemento HTML DOM.
Click Me!
Button
{{ mySwitch }}
Q # 36) Quais são os atributos que podem ser usados durante a criação de uma nova diretiva AngularJs?
Responda: Existem vários atributos que podem ser usados durante a criação de uma nova diretiva.
Eles incluem:
- Modelo: Ele descreve um modelo embutido como uma string.
- URL do modelo: Este atributo especifica o compilador HTML AngularJs para substituir a diretiva customizada dentro de um modelo pelo conteúdo HTML localizado dentro de um arquivo separado.
- Substituir: Ele substitui o elemento atual se a condição for verdadeira, se false, acrescente essa diretiva ao elemento atual.
- Transcluir: Ele permite que você mova os filhos originais de uma diretiva para um local dentro do novo modelo.
- Escopo: Ele cria um novo escopo para esta diretiva em vez de herdar o escopo pai.
- Controlador: Ele cria um controlador que publica uma API para comunicação através das diretivas.
- Requer: É necessária a presença de outra diretiva para funcionar com eficácia a diretiva atual.
- Ligação: Ele modifica o resultado em instâncias do elemento DOM, adiciona ouvintes de eventos e configura a vinculação de dados.
- Compilar: Ele modifica o modelo DOM para recursos em cópias de uma diretiva, como quando usado em outras diretivas. Sua função de compilação também pode retornar funções de link para modificar as instâncias do elemento resultante.
P # 37) Os controladores aninhados são possíveis ou não em AngularJs?
Responda: Sim, é possível, pois os controladores aninhados são bem definidos de maneira classificada durante o uso de uma visualização.
Q 38) O AngularJS é adequado para todos os navegadores?
Responda: Sim, é compatível com todos os navegadores como Safari, Chrome, Mozilla, Opera, IE, etc., bem como navegadores móveis.
Q 39) Definir serviços em AngularJS.
Responda: Os serviços AngularJS são os objetos ou funções singleton que são usados para realizar tarefas definidas. Ele abrange algumas ideias corporativas e esses propósitos podem ser chamados de controladores, diretivos, filtros e assim por diante.
Q 40) Explique as vantagens do AngularJS.
Resposta: As vantagens incluem:
- Suporta formulário MVC.
- Organize duas formas de vinculação de dados usando AngularJS.
- Suporta comunicação cliente-servidor mútua.
- Suporta simulações.
Q # 41) Diferença entre serviços e fábrica.
Responda: Fábricas são funções que retornam o objeto, enquanto serviços são funções construtoras do objeto que é usado por uma nova palavra-chave.
Sintaxe:
Fábrica - module.factory (`factoryName`, função);
Serviço - module.service (`serviceName`, função);
P # 42) Se a fábrica e o serviço forem equivalentes, quando devo usá-los?
Responda: O provedor de fábrica é preferido usando um objeto, enquanto um provedor de serviços é preferido usando com classe.
Q # 43) Diferença entre AngularJS e React.JS.
Responda: AngularJS é uma estrutura JS baseada na linguagem TypeScript lançada em outubro de 2010 pelo Google. É uma estrutura totalmente gratuita e de código aberto que é usada em projetos SPA (ou seja, projetos de aplicativos de página única).
React.JS é uma biblioteca javascript desenvolvida pelo Facebook em março de 2013 para a construção de UI. Os componentes React podem ser usados em várias páginas, mas não como um SPA (ou seja, aplicativo de página única).
Q # 44) Diferença entre a diretiva ng-bind e ng-model.
Responda: A diretiva ng-bind tem vinculações de dados unilaterais, fluxos de dados apenas do objeto para a IU, não vice-versa (ou seja, $ scope >> view) e a diretiva ng-model tem vinculações de dados bidirecionais, fluxos de dados entre a IU para o objeto e vice-versa versa (ou seja, $ scope >> view e view >> $ scope).
P # 45) Qual é a diferença entre AJAX e AngularJS?
Responda: AJAX significa Asynchronous JavaScript, que é usado para enviar e obter respostas do servidor sem carregar a página.
Considerando que AngularJS é uma estrutura JavaScript baseada em linguagem de digitação seguindo o padrão MVC.
Q # 46) Defina ng-if, ng-show e ng-hide.
Responda: A diretiva ng-if é usada como uma cláusula if, que remove o elemento HTML se a expressão se tornar falsa.
Sintaxe
A diretiva ng-show é usada para mostrar o elemento HTML se a expressão se tornar verdadeira. E se a expressão se tornar falsa, o elemento HTML será oculto.
Sintaxe
A diretiva ng-hide é usada para ocultar o elemento HTML se a expressão se tornar falsa.
Sintaxe
Ambos ng-show e ng-hide usam o método de propriedade de exibição.
Q # 47) Qual é a diferença entre ngRoute e ui-router?
Responda: ngRoute é um módulo desenvolvido pela equipe do angularJS que fazia parte do framework central do angularJS. Considerando que o ui-router foi desenvolvido por uma comunidade terceirizada para superar os problemas do ngRoute.
ngRoute é um roteamento baseado em localização ou URL, e ui-router é um roteamento baseado em estado que permite visualizações aninhadas.
Q # 48) Como definir, obter e limpar cookies em AngularJs?
Responda: O AngularJS tem um módulo chamado ngCookies, portanto, antes de injetar o ngCookies, o angular-cookies.js deve ser incluído no aplicativo.
- Definir Cookies - O método Put é usado para definir cookies em um formato de valor-chave.
$cookies.put(“username”, $scope.username);
- Obter Cookies - O método Get é usado para obter cookies.
$cookies.get(‘username’);
- Limpar Cookies - O método Remove é usado para remover cookies.
$cookies.remove(‘username’);
Conclusão
Tenho certeza que este artigo teria ajudado você a entender os fundamentos e o nível avançado do AngularJS.
Este conjunto de perguntas e respostas da entrevista no AngularJS listadas aqui permitirá que você decifre qualquer entrevista do AngularJS com sucesso em um nível mais recente e também de experiência. Estas são as perguntas frequentes feitas nas entrevistas. É tudo por agora.
Este artigo o ajudará a entender e enfrentar qualquer entrevista relacionada ao AngularJS !! Espero que você tenha gostado de toda a gama de tutoriais nesta série AngularJS !!
Leitura recomendada
- Perguntas e respostas da entrevista
- Perguntas e respostas da entrevista de teste de ETL
- Algumas perguntas e respostas complicadas de testes manuais
- 25 melhores perguntas e respostas da entrevista de teste do Agile
- Perguntas da entrevista de Spock com respostas (mais populares)
- Algumas perguntas interessantes da entrevista de teste de software
- Mais de 20 perguntas e respostas da entrevista em .NET
- 51 principais perguntas e respostas da entrevista de bootstrap