AngularJS-uttrykk: ARRAY, Objects, $eval, Strings [Eksempler]
Hva er Angular JS Expressions?
Uttrykk er variabler som ble definert i de doble klammeparentesene {{ }}. De er veldig ofte brukt i Angular JS, og du vil se dem i vรฅre tidligere opplรฆringsprogrammer.
Forklar Angular.js-uttrykk med et eksempel
AngularJS-uttrykk er de som er skrevet innenfor doble klammeparenteser {{uttrykk}}.
Syntaks:
Et enkelt eksempel pรฅ et uttrykk er {{5 + 6}}.
Angular.JS-uttrykk brukes til รฅ binde data til HTML pรฅ samme mรฅte som ng-bind-direktivet. AngularJS viser dataene nรธyaktig pรฅ stedet der uttrykket er plassert.
La oss se pรฅ et eksempel pรฅ Angular.JS-uttrykk.
I dette eksemplet รธnsker vi bare รฅ vise et enkelt tillegg av tall som et uttrykk.
<!DOCTYPE html>
<html>
<head>
<meta chrset="UTF 8">
<title>Event Registration</title>
</head>
<body>
<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<h1> Guru99 Global Event</h1>
<div ng-app="">
Addition : {{6+9}}
</div>
</body>
</html>
Code Forklaring:
- ng-app-direktivet i vรฅrt eksempel er tomt som vist pรฅ skjermbildet ovenfor. Dette betyr bare at det ikke er noen modul for รฅ tilordne kontrollere, direktiver, tjenester knyttet til koden.
- Vi legger til et enkelt uttrykk som ser pรฅ addisjon av 2 tall.
Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.
Utgang:
Fra utgangen,
- Det kan sees at addisjonen av de to tallene 9 og 6 finner sted og tilleggsverdien 15 vises.
Vinklet.JS Numbers
Uttrykk kan ogsรฅ brukes til รฅ jobbe med tall. La oss se pรฅ et eksempel pรฅ Angular.JS-uttrykk med tall.
I dette eksemplet รธnsker vi bare รฅ vise en enkel multiplikasjon av 2 tallvariabler kalt margin og profitt og vise deres multipliserte verdi.
<!DOCTYPE html>
<html>
<head>
<meta chrset="UTF 8">
<title>Event Registration</title>
</head>
<body>
<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<h1> Guru99 Global Event</h1>
<div ng-app="" ng-init="margin=2;profit=200">
Total profit margin
{{margin*profit}}
</div>
</body>
</html>
Code Forklaring:
- ng-init-direktivet brukes i angular.js for รฅ definere variabler og deres tilsvarende verdier i selve visningen. Det er litt som รฅ definere lokale variabler for รฅ kode i noen programmeringssprรฅk. I dette tilfellet definerer vi 2 variabler kalt margin og fortjeneste og tildeler verdier til dem.
- Vi bruker da de 2 lokale variablene og multipliserer verdiene deres.
Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.
Utgang:
Fra utgangen,
- Det kan tydelig sees at multiplikasjonen av de 2 tallene 2 og 200 finner sted, og den multipliserte verdien pรฅ 400 vises.
AngularJS-strenger
Uttrykk kan ogsรฅ brukes til รฅ jobbe med strenger. La oss se pรฅ et eksempel pรฅ Angular JS-uttrykk med strenger.
I dette eksemplet skal vi definere 2 strenger med "fornavn" og "etternavn" og vise dem ved รฅ bruke uttrykk tilsvarende.
<!DOCTYPE html>
<html>
<head>
<meta chrset="UTF 8">
<title>Event Registration</title>
</head>
<body>
<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<h1> Guru99 Global Event</h1>
<div ng-app="" ng-init="firstName='Guru';lastName='99'">
First Name : {{firstName}}<br>
last Name : {{lastName}}
</div>
</body>
</html>
Code Forklaring:
- ng-init-direktivet brukes til รฅ definere variablene firstName med verdien โGuru" og variabelen etternavn med verdien "99".
- Vi bruker da uttrykk for {{firstName}} og {{lastName}} for รฅ fรฅ tilgang til verdien av disse variablene og vise dem i visningen deretter.
Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.
Utgang:
Fra utgangen kan det tydelig sees at verdiene til fornavn og etternavn vises pรฅ skjermen.
Angular.JS-objekter
Uttrykk kan brukes til รฅ jobbe med JavaScript objekter ogsรฅ.
La oss se pรฅ et eksempel pรฅ Angular.JS-uttrykk med javascript-objekter. Et javascript-objekt bestรฅr av et navn-verdi-par.
Nedenfor er et eksempel pรฅ syntaksen til et javascript-objekt.
Syntaks:
var car = {type:"Ford", model:"Explorer", color:"White"};
I dette eksemplet skal vi definere ett objekt som et personobjekt som vil ha 2 nรธkkelverdipar av "fornavn" og "etternavn".
<!DOCTYPE html>
<html>
<head>
<meta chrset="UTF 8">
<title>Event Registration</title>
</head>
<body>
<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<h1> Guru99 Global Event</h1>
<div ng-app="" ng-init="person={firstName:'Guru',lastName:'99'}">
First Name : {{person.firstName}}<br>
Last Name : {{person.lastName}}
</div>
</body>
</html>
Code Forklaring:
- ng-init-direktivet brukes til รฅ definere objektet person, som igjen har nรธkkelverdipar for firstName med verdien ยซGuru" og variabelen etternavn med verdien "99".
- Vi bruker da uttrykk for {{person.firstName}} og {{person.secondName}} for รฅ fรฅ tilgang til verdien av disse variablene og vise dem i visningen deretter. Siden de faktiske medlemsvariablene er en del av objektpersonen, mรฅ de fรฅ tilgang til den med punktnotasjonen (.) for รฅ fรฅ tilgang til den faktiske verdien.
Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.
Utgang:
Fra utgangen,
- Det kan tydelig sees at verdiene for "firstName" og "secondName" vises pรฅ skjermen.
AngularJS-arrayer
Uttrykk kan ogsรฅ brukes til รฅ arbeide med matriser. La oss se pรฅ et eksempel pรฅ Angular JS-uttrykk med matriser.
I dette eksemplet skal vi definere en matrise som skal inneholde karakterene til en student i 3 fag. I visningen vil vi vise verdien av disse merkene tilsvarende.
<!DOCTYPE html>
<html>
<head>
<meta chrset="UTF 8">
<title>Event Registration</title>
</head>
<body>
<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<h1> Guru99 Global Event</h1>
<div ng-app="" ng-init="marks=[1,15,19]">
Student Marks<br>
Subject1 : {{marks[0] }}<br>
Subject2 : {{marks[1] }}<br>
Subject3 : {{marks[2] }}<br>
</div>
</body>
</html>
Code Forklaring:
- ng-init-direktivet brukes definere matrisen med navnet "merker" med 3 verdier pรฅ 1, 15 og 19.
- Vi bruker da uttrykk for merker [indeks] for รฅ fรฅ tilgang til hvert element i matrisen.
Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.
Utgang:
Fra utgangen kan det tydelig sees at merkene som vises, som er definert i matrisen.
AngularJS-uttrykksmuligheter og begrensninger
Angular.JS-uttrykksmuligheter
- Vinkeluttrykk er som JavaManusuttrykk. Derfor har den samme kraft og fleksibilitet.
- In JavaSkript, nรฅr du prรธver รฅ evaluere udefinerte egenskaper, genererer det en ReferenceError eller TypeError. I Angular er uttrykksevaluering tilgivende og genererer en udefinert eller null.
- Man kan bruke filtre i uttrykk for รฅ formatere data fรธr de vises.
Angular JS-uttrykksbegrensninger
- Det er forelรธpig ingen tilgjengelighet for รฅ bruke betingelser, lรธkker eller unntak i et vinkeluttrykk
- Du kan ikke deklarere funksjoner i et vinkeluttrykk, selv i ng-init-direktivet.
- Man kan ikke lage regulรฆre uttrykk i et Angular uttrykk. Et regulรฆrt uttrykk er en kombinasjon av symboler og tegn, som brukes til รฅ finne for strenger som .*\.txt$. Slike uttrykk kan ikke brukes i Angular JS-uttrykk.
- Man kan heller ikke bruke, eller annullere, i et kantete uttrykk.
Forskjellen mellom uttrykk og $eval
$eval-funksjonen lar en evaluere uttrykk fra selve kontrolleren. Sรฅ mens uttrykk brukes for evaluering i visningen, brukes $eval i kontrollerfunksjonen.
La oss se pรฅ et enkelt eksempel pรฅ dette.
I dette eksemplet,
Vi skal bare bruke $eval-funksjonen til รฅ legge til 2 tall og gjรธre det tilgjengelig i scope-objektet slik at det kan vises i visningen.
<!DOCTYPE html>
<html>
<head>
<meta chrset="UTF 8">
<title>Event Registration</title>
</head>
<body>
<script src="https://code.angularjs.org/1.6.9/angular-route.js"></script>
<script src="https://code.angularjs.org/1.6.9/angular.min.js"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<div ng-app="sampleApp" ng-controller="AngularController">
<h1> Guru99 Global Event</h1>
{{value}}
</div>
<script>
var sampleApp = angular.module('sampleApp',[]);
sampleApp.controller('AngularController',function($scope){
$scope.a=1;
$scope.b=1;
$scope.value=$scope.$eval('a+b');
});
</script>
</body>
</html>
Code Forklaring:
- Vi definerer fรธrst to variabler 'a' og 'b', som hver har en verdi pรฅ 2.
- Vi bruker funksjonen $scope.$eval for รฅ evaluere tillegget av de 2 variablene og tilordne det til omfangsvariabelen 'verdi'.
- Vi viser da bare verdien til variabelen 'verdi' i visningen.
Hvis koden utfรธres vellykket, vil fรธlgende utdata vises nรฅr du kjรธrer koden i nettleseren.
Utgang:
Ovennevnte utdata viser utdataene til uttrykket som ble evaluert i controller. Resultatene ovenfor viser at $eval-uttrykket ble brukt til รฅ legge til de 2 omfangsvariablene 'a og b' med resultatet sendt og vist i visningen.
Sammendrag
- Vi har sett hvordan uttrykk i Kantete JS kan brukes til รฅ evaluere regelmessig JavaSkriptlignende uttrykk, for eksempel enkel addisjon av tall.
- ng-init-direktivet kan brukes til รฅ definere variabler in-line som kan brukes i visningen.
- Uttrykk kan fรฅs til รฅ fungere med primitive typer som strenger og tall.
- Uttrykk kan ogsรฅ brukes til รฅ jobbe med andre typer som f.eks JavaSkriptobjekter og matriser.
- Uttrykk i Angular JS har noen fรฅ begrensninger som for eksempel รฅ ikke ha regulรฆre uttrykk eller bruke funksjoner, looper eller betingede utsagn.












