top 45 javascript interview questions with detailed answers
Vanliga grundläggande och avancerade JavaScript-intervjufrågor med detaljerade svar för alla JavaScript-utvecklare.
Om du förbereder dig för en intervju, här är de vanligaste JS-intervjufrågorna och svaren för din referens.
Vi har utformat samma för att få dig att presentera de frågor du troligen kan stöta på under din tekniska intervju.
Låt oss utforska !!
Om JavaScript
JavaScript är ett programmeringsspråk på hög nivå, förmodligen ett av de mest använda programmeringsspråken i världen just nu. Den kan användas för att programmera webbläsare eller till och med servrar.
hur man öppnar en torrentfil
För att förstå vikten av JavaScript, inaktivera JavaScript i din webbläsare och försök ladda webbsidan i den. Dessa webbsidor fungerar inte korrekt. Många innehåll i dem kan inte fungera bra. Nästan alla moderna webbläsare använder kombinationen av JavaScript, CSS och HTML.
JavaScript är ett tolkat programmeringsspråk. En tolk är inbäddad i webbläsare som Google Chrome, Microsoft Internet Explorer, etc. Så dess kod kan hanteras av JavaScript Engine i webbläsaren.
JavaScript dök upp i december 1995 och kallades ursprungligen LiveScript, även om namnet snart ändrades av marknadsföringsskäl. Det bör inte förväxlas med ”Java” som också har en viss likhet men är ett helt annat språk.
Vanliga frågor om JavaScript-intervju
F # 1) Vad är JavaScript?
Svar: JavaScript är ett skriptspråk utvecklat av Netscape. Den kan användas för att programmera webbläsare eller till och med servrar. Det kan dynamiskt uppdatera innehållet på webbsidan, vilket är skönheten i detta språk.
F # 2) Vilka är fördelarna med att använda extern JavaScript?
Svar: Att använda extern JavaScript i vår kod har många fördelar.
Dessa anges nedan.
- Separation av kod är klar.
- Kodhållbarhet är lätt.
- Prestanda är bättre.
F # 3) I följande kodavsnitt kan du vänligen förutsäga utdata eller om du får ett fel, förklara då felet?
Sample: Software Testing Help
var studentName = 'Sajeesh Sreeni'; // String 'Sajeesh Sreeni' stored in studentName var studentName; // varaible is decalred again document.getElementById('studentName').innerHTML = 'Redeclaring the varaible will not lose the value!.
' +'Here the value in studentName is '+ studentName;
Answ är r : Den här koden ger inga fel. Omdeklaration av variablerna är tillåten i JavaScript. Därför kommer värdet på variabeln inte att gå förlorat efter utförandet av uttalandet här.
F # 4) I följande kodavsnitt kan du vänligen förutsäga utdata eller om du får ett fel. snälla förklara felet?
Sample: Software Testing Help
var sum_first =50+20+' Sajeesh Sreeni '; var sum_second= ' Sajeesh Sreeni '+50+20; document.getElementById('sum_first').innerHTML = 'The first varaible sum is :'+sum_first + '
The second varaible sum is :'+sum_second ;
Svar: Den här koden visar inga fel!
Utdata från kodavsnittet:
Den första variabla summan är: 70 Sajeesh Sreeni
Den andra variabla summan är: Sajeesh Sreeni 5020
F # 5) Vad är skillnaden mellan test () och exec () metoder?
Svar: Både test () och exec () är RegExp-uttrycksmetoder.
Genom att använda en testa () , vi söker en sträng efter ett visst mönster, om den hittar den matchande texten returnerar den det booleska värdet 'true' eller annars returnerar den 'false'.
Men i exec () , kommer vi att söka i en sträng för ett visst mönster, om den hittar matchande text returnerar den själva mönstret eller annars returnerar det ”null” -värde.
F # 6) Vilka är fördelarna med JavaScript?
Svar: Detta skriptspråk har många fördelar som anges nedan.
- Lättvikt: Det är enkelt att implementera. Den har små minnesavtryck.
- Tolkad: Det är ett tolkat språk. Instruktioner utförs direkt.
- Objektorienterad: Det är ett objektorienterat språk.
- Första klassens funktioner: I JavaScript kan en funktion användas som ett värde.
- Skriptspråk: Det är ett språk där instruktioner skrivs för en körtidsmiljö.
F # 7) I följande kodavsnitt kan du vänligen förutsäga utdata eller om du får ett fel. snälla förklara felet?
Sample: Software Testing Help
Example Const Variable
const first_num; first_num =1000; document.getElementById('display').innerHTML = 'First Number:'+ first_num;
Svar: Den 'const' variabeln 'first_num' initialiseras inte med ett värde, så koden ger ett syntaxfel.
Utdata från kodavsnittet:
Fel: Fångad syntaxfel: Initialiserare saknas i konstdeklarationen
F # 8) Har du använt någon webbläsare för felsökning? Om ja, hur görs det?
Svar: Genom att trycka på “F12” -tangenten på tangentbordet kan vi aktivera felsökning i webbläsaren. Välj fliken 'Konsol' för att visa resultaten.
I Console kan vi ställa in brytpunkter och visa värdet i variabler. Alla moderna webbläsare har en inbyggd felsökare med sig (Till exempel: Chrome, Firefox, Opera och Safari ) . Denna funktion kan slås PÅ och AV.
F # 9) Vad är det för nyckelordet ”debugger” i JavaScript-kod?
Svar: Att använda nyckelordet 'debugger' i koden är som att använda brytpunkter i felsökaren.
För att testa koden måste felsökaren vara aktiverad för webbläsaren. Om felsökning är inaktiverad för webbläsaren fungerar inte koden. Under felsökning av koden bör den återstående delen sluta köra innan den går till nästa rad.
F # 10) Vilka är de olika typerna av felnamnsvärden?
Svar: Det finns sex typer av värden i egenskapen ”Felnamn”.
Fel | Beskrivning |
---|---|
Områdesfel | Vi får detta fel om vi använder ett nummer utanför intervallet |
Syntaxfel | Detta fel uppstår när vi använder fel syntax. (Se frågor nr: 7) |
Referensfel | Det här felet kastas om det används en odeklarerad variabel. Se frågor nr 19 |
Eval-fel | Kastas på grund av felet i eval (). Fel i den nya JavaScript-versionen har inte |
Skrivfel | Värde ligger utanför intervallet för de typer som används. Se frågor nr 22 |
URI-fel | På grund av användningen av olagliga karaktärer. |
F # 11) Vad är JavaScript-hissning?
Svar: När en JavaScript-hissningsmetod används, när en tolk kör koden, lyfts alla variabler till toppen av original / nuvarande omfång. Om du har en variabel deklarerad var som helst i koden, kommer den till toppen.
Denna metod är endast tillämplig på deklarationen av en variabel och är inte tillämplig för initialisering av en variabel. Funktioner lyfts också upp, medan funktionsförklaringar inte lyfts upp.
I grund och botten, där vi förklarade variabeln inuti koden spelar ingen roll mycket.
F # 12) Vad är JavaScript 'Strikt läge'?
Svar: 'Strikt läge' är en begränsad variant av JavaScript. Vanligtvis är detta språk 'inte särskilt strikt' när det gäller att kasta fel. Men i 'Strikt läge' kommer det att kasta alla typer av fel, även tysta fel. Således blir felsökningen enklare. Och chanserna för att göra ett misstag för utvecklaren minskar.
F # 13) Vilka egenskaper kännetecknar JavaScript 'Strikt läge'?
Svar: Nedan följer egenskaperna för 'Strikt läge':
- 'Strikt läge' hindrar utvecklare från att skapa globala variabler.
- Utvecklare är begränsade från att använda dubbla parametrar.
- Strikt läge begränsar dig från att använda JavaScript-nyckelordet som ett variabelnamn eller funktionsnamn.
- Strikt läge deklareras med ”använd strikt” nyckelord i början av skriptet.
- Alla webbläsare stöder strikt läge.
F # 14) Vad är självpåkallande funktioner?
Svar: De är också kända som 'Omedelbart anropade funktionsuttryck' eller 'Självutförande anonyma funktioner'. Dessa funktioner anropas automatiskt i koden, varför de namnges som ”Self Invoking Functions”.
Vanligtvis definierar vi en funktion och åberopar den, men om vi vill utföra en funktion automatiskt där den förklaras och om vi inte ska ringa den igen kan vi använda anonyma funktioner. Och dessa typer av funktioner har inget namn.
F # 15) Vad är syntaxen för 'Self Invoking Function'? Ge ett exempel?
Svar:
Syntaxen för funktionen Self-Invoking:
(function () { return () } () ;
Här anger den sista '()' parentesen i syntaxen att det är ett funktionsuttryck.
Exempel på självpåkallade funktioner:
Sample: Software Testing Help
Example for Self-Invoking
(function (){ elem = document.getElementById('dispaly_num'); elem.innerHTML = 'This function has no name.
It is called automatically'; }());
Här anropas den anonyma funktionen automatiskt i kodavsnittet.
Funktionen används för att ställa in textegenskapen för
tagg med 'display_num' som Id.
Utdata från kodavsnittet:
Denna funktion har inget namn.
Det anropas automatiskt
F # 16) I följande kodavsnitt kan du vänligen förutsäga utdata eller om du får ett fel; snälla förklara felet?
Svar:
Sample : Software Testing Help
Example for JavaScript Hoisting
first_num = 100; // Assign value 100 to num elem = document.getElementById('dispaly_num'); elem.innerHTML = ' Here the variable first_num: '+first_num +' is taken to the top
' + 'Since second variable is initialised the value is not taken to the top and it's value is ' + ''+second_num +' “; var first_num; // declaration only var second_num =200; // Initialised the variable
Se tidigare Q # 11, som förklaras där, tolk kommer att ta alla deklarerade variabler utom initialisering till toppen.
Enligt detta tas variabeln 'first_num' till toppen och variabeln 'second_num' initialiseras med ett värde så att den inte tas till toppen. Den här koden ger inget fel. Men värdet på 'second_num' är odefinierat.
Utdata från kodavsnittet:
Här tas variabeln first_num: 100 till toppen
Eftersom den andra variabeln initialiseras tas värdet inte till toppen och dess värde är odefinierat
F # 17) Om du behöver dölja JavaScript-koden från de äldre webbläsarversionerna, hur ska du utföra den?
Svar: I koden, efter taggen, lägg till ”
Detta tillåter inte webbläsaren att köra JavaScript-koden om den var en äldre version av den. Lägg till '// ->' HTML-tagg efter slutkoden.
Den här metoden hjälper till att lösa kompatibilitetsproblem och UI-problem i en utsträckning.
Sample: Software Testing Help
Här körs kodavsnittet efter en tagg i min webbläsare eftersom jag inte använder en äldre version av webbläsaren.
Utdata från kodavsnittet:
Här använder jag inte en äldre version av webbläsaren.
Så koden fungerar i min webbläsare
F # 18) I följande kodavsnitt kan du vänligen förutsäga utdata eller om du får ett fel, förklara felet?
Sample: Software Testing Help
Find the output
var first_num =500; var result= function(){ document.getElementById('display').innerHTML = first_num; var first_num =1000; } result();
Svar: Här i koden ovan kommer värdet på variabeln 'first_num' inte att vara 1000.
I JavaScript finns det ingen lyftning för variabel initialisering. Funktionen 'resultat ()' väljer den lokala variabeln 'första_nummer', eftersom den deklareras inuti funktionen. Eftersom variabeln deklareras efter att den har använts är värdet ”first_num” odefinierat.
Utdata från kodavsnittet:
Odefinierad
F # 19) Vad är skillnaden mellan 'var' och 'låt' nyckelord?
Svar: Skillnaderna är följande:
Var | låta |
---|---|
'Var' nyckelord introducerades i JavaScript-kod från början av scenen. | Nyckelordet 'låt' introducerades endast 2015. |
Nyckelordet 'Var' har funktionsomfång. Variabeln definierad med var är tillgänglig var som helst inom funktionen | En variabel som deklareras med 'låt' nyckelord har en omfattning endast med i det blocket. Så, låt oss ha ett blockomfång. |
Variabeln deklarerad med 'var' lyfts | Variabeln som deklareras med 'låt' hissas |
F # 20) I följande kodavsnitt kan du vänligen förutsäga utdata eller om du får ett fel; snälla förklara felet?
Sample: Software Testing Help
Find the output
if(true){ var first_num =1000; let second_num=500; } document.getElementById('display_first').innerHTML = 'First Number:' + first_num; document.getElementById('display_second').innerHTML = 'Second Number:' + second_num;
Svar:
Utdata från kodavsnittet:
Först Siffra : 1000
Vi kommer få 'Först Siffra : 1000 ' som utdata. Det finns också ett fel i 'Uncaught Reference Error'.
I kodavsnittet är omfattningen av 'second_num' bara inom if () -blocket. Om en utvecklare försöker få åtkomst till värdet utanför blocket får han ett ”Uncaught Reference error”.
Okänt referensfel: second_num definieras inte.
F # 21) Vad är skillnaden mellan '==' och '==='?
Svar: Både '==' och '===' är jämförelseoperatörer.
'==' operatör | '===' operatör |
---|---|
Det är känt som ”Type Converting Operator” | Det är känt som ”Strict Equality Operator” |
Det jämför värde, jämför inte typ | Den jämför både värde och typ. |
F # 22) Vad är skillnaden mellan 'låt' och 'konst'?
Svar: Skillnaderna är följande:
låta | konst |
---|---|
med hjälp av 'let' kan vi ändra värdet på variabeln vilket antal gånger som helst | med hjälp av 'const', efter den första tilldelningen av värdet kan vi inte omdefiniera värdet igen |
Tänk på koden { låt first_num = 1; första_nummer = 2; dokumentera. skriv (första_num); } Här kommer koden att ge en utdata, eftersom värdet på first_num är möjligt. | Tänk på koden { const second_num = 1; second_num = 2; dokumentera. skriv (second_num); } Här kommer koden att producera ett fel, eftersom 'second_num' tilldelas ett andra värde. |
F # 23) I följande kodavsnitt kan du vänligen förutsäga utdata eller om du får ett fel. snälla förklara felet?
Sample: Software Testing Help
Example of 'Const' Keyword
let first_num =500; first_num=501; document.getElementById('display_first').innerHTML = 'First Number:'+ first_num ; const second_num =1000; second_num=1001; document.getElementById('display_second').innerHTML = 'Second Number :'+second_num;
Svar: Se fråga nr 21 innan du läser vidare
Utdata från kodavsnittet:
Första siffran: 501
Vi får också ett fel när vi kör koden, eftersom vi försöker ändra värdet på en 'const' -variabel.
Fel: Uncaught TypeError: Tilldelning till konstant variabel.
F # 24) Vad är skillnaden mellan 'null' och 'odefinierad'?
Svar: Båda nyckelorden representerar tomma värden .
Skillnaderna är:
- I 'odefinierad' definierar vi en variabel, men vi tilldelar inte den variabeln ett värde. Å andra sidan definierar vi i 'null' en variabel och tilldelar variabeln 'null'.
- typ av (odefinierad) och typ av (null) objekt.
F # 25) Vad är skillnaden mellan 'funktionsdeklaration' och 'funktionsuttryck'?
Svar: Det kan förklaras med ett exempel:
Sample: Software Testing Help
Example Function Declaration
function add(first_num,second_num){ return first_num + second_num; } var substract = function sub(first_num,second_num){ return first_num - second_num; } var first_num=700; var second_num=300; document.getElementById('display_add').innerHTML = 'Sum of the number is:' + add(first_num,second_num); document.getElementById('display_sub').innerHTML = 'Difference of the number is:' + substract(first_num,second_num);
Som visas i exemplet är add () en funktionsdeklaration och subtrahering () är ett funktionsuttryck. Syntaxen för funktionsdeklarationen är som en funktion som sparas i en variabel.
Funktionsdeklarationer hissas men funktionsuttryck hissas inte.
F # 26) Vad är 'settimeout ()'?
Svar: Det kommer att förklaras bättre med ett exempel.
Tänk på kodavsnittet
Console.log (‘First Line’); Console.log (‘Second Line’); Console.log (‘Third Line’);
Utdata från kodavsnittet:
Första linjen
Andra linjen
Tredje raden
Nu introducerar du metoden settimeout () och slår in samma uppsättning kod i den.
Settimeout(function() { Console.log (‘First Line’); },0); Console.log (‘Second Line’); Console.log (‘Third Line’);
Utdata från kodavsnittet:
Andra linjen
Tredje raden
Första linjen
Med införandet av settimeout () blir processerna asynkrona. De första påståendena som läggs i stacken är Console.log ('Second Line') och Console.log ('Third Line'), och de kommer att köras först. Du måste vänta tills allt i stacken är klar först.
Även om ”0” är tidsgränsen betyder det inte att den kommer att köras direkt.
F # 27) Vad är en stängning och hur använder du den?
Svar: En förslutning är en inre funktion. Den kan komma åt de yttre variablerna för en funktion. I stängning finns det inom funktion_1 en annan funktion_2 som returnerar ”A” -värde och funktion_1 returnerar också ett värde; säg 'B'.
Här är sum () den yttre funktionen och add () är en inre funktion, den kan komma åt alla variabler inklusive 'första_nummer' 'andra_nummer' och 'tredje_nummer'. Den yttre funktionen kallar den inre funktionen add ().
// To find the sum of two numbers using closure method function sum( first_num, second_num ) { var sumStr= 600; function add(first_num , second_num) { return (sumStr + (first_num + second_num)); } return add(); } document.write('Result is :'+ sum(150,350));
Utdata från kodavsnittet:
Resultatet är: 500
F # 28) I följande kodavsnitt kan du förutsäga resultatet eller om du får ett fel. snälla förklara felet?
Sample: Software Testing Help
Example Assignmnet Statement
var x =500; let y,z,p,q; q=200; if(true){ x=y=z=p=q; document.getElementById('display').innerHTML = 'x='+ x + '
y :'+ y +'
z :'+ z+'
p :'+ p+'
q :'+ q; }
Svar: Uppdragsuttalandena beaktas från höger till vänster.
Utdata från kodavsnittet:
x = 200
och: 200
med: 200
s: 200
q: 200
F # 29) Kan du ge ett exempel där kodavsnittet visar skillnaden mellan test () och exec () metoder?
Sample : Software Testing Help
Example for exec() methods
Click the button to search for a pattern 'How“ in the given string 'Hello. Good Morning. How do you feel today?'
If the 'How' is found, the method will return the pattern
Search function searchTxt() { var str = 'Hello. Good Morning. How do you feel today?'; var search_patt = new RegExp('How'); var res = search_patt.exec(str); document.getElementById('result').innerHTML ='Found the pattern :'+ res; }
Svar: Detta är ett exempel på test () och exec () -metoden, se frågor nr 5 för mer information.
Utdata från kodavsnittet:
Hittade mönstret med exec (): Hur
Med test () är resultatet: sant
F # 30) Kan du ge ett exempel som visar JavaScript-hissning?
Svar:
Sample: Software Testing Help
Example for JavaScript Hoisting
num = 100; // Assign value 100 to num elem = document.getElementById('dispaly_num'); elem.innerHTML = 'Here the variables are used before declaring it.' + '
The value of the variable is ' + num; var num; // Declare the varaible
Se Q # 11 för mer information.
Här används variabeln ”num” innan den deklareras. Men JavaScript-hissning tillåter det.
Utdata från kodavsnittet:
Här används variablerna innan deklareras.
Värdet på variabeln är 100
F # 31) Kan du ge ett exempel som visar användningen av sökordet 'debugger' i JavaScript-koden?
Svar:
Sample: Software Testing Help
Example for debug keyword
Here to test the code, debugger must be enabled for the browser,
during debugging the code below should stop executing before it goes to the next line.
var a = 1000; var b = 500; var sum = a + b; document.getElementById('wait_result').innerHTML = 'Adding numbers......
Select 'Resume Script execution' to continue: '; debugger; document.getElementById('show_result').innerHTML = 'Sum of the numbers : '+sum;
Notera: Felsökaren måste vara aktiverad för att webbläsaren ska kunna testa koden. Se frågor nr 5 för mer information
Detta är ett exempel på felsökningsord (använd webbläsare: Chrome)
Utdata från kodavsnittet:
Här för att testa koden måste felsökaren vara aktiverad för webbläsaren,
under felsökning bör koden nedan sluta köra innan den går till nästa rad.
Lägger till nummer ...
Välj 'Fortsätt körning av skript' för att fortsätta:
Summan av siffrorna: 1500
F # 32) I följande kodavsnitt kan du vänligen förutsäga utdata eller om du får ett fel. snälla förklara felet?
Sample: Software Testing Help
Example Type Converting
var first_num =500; var first_name='500'; if(first_num == first_name){ document.getElementById('display').innerHTML = 'Comparison will return 'true' by Type converting Operator '; }
Svar: Tänk på koden
If (‘100’==100) { document. write (“It’s a Type Converting Operator”); } Here typeof(‘100’) is string typeof(100) is number the ‘==’ operator will convert the number type, which is on the right side of the operator to string and compare both values
Utdata från kodavsnittet:
Jämförelse returnerar ”true” genom typkonverterande operatör
F # 33) Är Java och JavaScript lika? Om inte, vad är då skillnaden mellan Java och JavaScript?
Svar:
Sl Nej | Java | JavaScript |
---|---|---|
1 | Java är ett programmeringsspråk för allmänt ändamål. | JavaScript är ett tolkat skriptspråk på hög nivå. |
två | Java är baserat på OOPS-koncept (Object-Oriented Programming). | JavaScript är både ett objektorienterat och ett funktionellt skript. |
3 | Körs i en Java Virtual Machine (JVM) eller webbläsare. | Körs endast i en webbläsare. |
4 | Java-kod måste sammanställas som Java-klassfil. | JavaScript har inget kompileringssteg. Istället läser en tolk i webbläsaren över JavaScript-koden, tolkar varje rad och kör den. |
Så, kort sagt, dessa språk är inte alls kopplade till eller beroende av varandra.
F # 34) Vilka datatyper stöds av JavaScript?
Svar: JavaScript stöder följande Sju primitiva datatyper och Objekt :
(i) Boolean: Detta är en logisk datatyp som endast kan ha två värden, dvs. sant eller falskt. När vi kontrollerar datatypen 'true' eller 'false' med typof-operatören returnerar den ett booleskt värde.
Till exempel, typeof (true) // returnerar booleska
Booleska värden kan användas för att jämföra två variabler.
Till exempel,
var x = 2; var y = 3; x==y //returns false
Det booleska värdet kan också användas för att kontrollera ett tillstånd
Till exempel,
var x = 2; var y = 3; If(xOm ovanstående villkor ”x En boolesk variabel kan skapas med funktionen Boolean ().
var myvar = ‘Hi'; Boolean(myvar); // This returns true because the 'myvar' value exists
Det booleska objektet kan också skapas med den nya operatören enligt följande:
var myobj = new Boolean(true);
(Ii) Null :Detta är en datatyp som endast representeras av ett värde, själva 'null'. Ett nollvärde betyder inget värde.
Till exempel,
var x = null; console.log(x);// This returns null
Om vi kontrollerar datatypen för en med typof-operatören får vi:
typeof(x); // This returns object. type of a null value is an object, not null.
(iii) Odefinierad: Denna datatyp betyder en variabel som inte är definierad. Variabeln deklareras men den innehåller inget värde.
Till exempel,
var x; console.log(x); // This returns undefined x=10;//Assign value to x console.log(x); // This returns 10
Variabeln 'a' har deklarerats men har ännu inte tilldelats något värde.
Vi kan tilldela ett värde till:
(iv) Antal: Denna datatyp kan vara ett flytpunktsvärde, ett heltal, ett exponentiellt värde, ett 'NaN' eller ett 'oändlighet'.
Till exempel,
var x=10; // This is an integer value var y=10.5; // decimal value var c = 10e5 // an exponential value ‘xyz’ * 10; //This returns NaN 10/0; // This returns infinity
Siffror kan skapas med hjälp av funktionen Number ():
var x = Number(10); console.log(x);// This returns 10
Nummerobjektet kan också skapas med den ”nya” operatören enligt följande:
var x= new Number(10); console.log(x); // This returns 10
(v) BigInt: Detta är en numerisk primitiv som kan representera heltal med godtycklig precision. BigInt skapas genom att lägga till n i slutet av ett heltal
Till exempel,
const x = 15n;
Numret kan konverteras till en BigInt med funktionen BigInt (nummer).
const x = 251; const y = BigInt(x); y === 251n // returns true
(vi) Sträng: Denna datatyp används för att representera textdata.
Till exempel,
var strVar1 = “Hi,how are you?”; var strVar2 = ‘Hi,how are you?’;
Ny sträng kan också skapas med hjälp av funktionen String () enligt följande:
var strVar3 = String(‘Hi,how are you?’); // This creates a string literal with value ‘Hi,how are you?’
Funktionen String () används också för att konvertera ett icke-strängvärde till en sträng.
String(150); // This statement will create a string ‘150’
Sträng kan också skapas med 'ny' operatör
var strVar4 = new String(“Hi,how are you?”); // This is a string object console.log(strVar4); // This will return the string ‘Hi,how are you?’
JavaScript-strängar är oföränderliga, dvs. när en sträng har skapats kan den inte ändras. Men en annan sträng kan skapas med en operation på originalsträngen.
Till exempel,
- Genom att sammanfoga två strängar med hjälp av sammankopplingsoperatören (+) eller String.concat () .
- Genom att få substring med String.substr () .
(vii) Symbol: Detta är ett unikt och oföränderligt primitivt värde och används som nyckeln till en objektegenskap. Symboler är nya för JavaScript i ECMAScript 2015
TILL Symbol värde representerar en unik identifierare.
Till exempel,
var symVar1 = Symbol('Symbol1'); let symVar2 = Symbol('Symbol1'); console.log(symVar1 === symVar2); // This returns 'false'.
Så många symboler skapas med samma beskrivning men med olika värden.
Symboler kan inte konverteras automatiskt.
Till exempel,
var symVar1 = Symbol('Symbol1'); alert(symVar1); // This gives TypeError: Cannot convert a Symbol value to a string
Detta kan bearbetas med att stränga () som följer:
alert(symVar1.toString()); // Symbol(symVar1), this works
Objektdatatyp
Ett objekt är ett värde i minnet som en identifierare refererar till.
Objekt avser en datastruktur som har data och instruktioner för att arbeta med data. Objekt hänvisar ibland till verkliga saker, Till exempel, en anställd eller en bil.
Till exempel,
I JavaScript-objekt skrivs värdena som namn: värde par enligt nedan:
var car1 = {type:'BMW', model:” The BMW X5“, color:'white'}; An object definition can span multiple lines as follows: var car1 = { type:'BMW', model: 'The BMW X5', color:'white' };
De namn: värden par kallas egenskaper . Till exempel, 'Typ' är egendom och 'BMW' är fastighetens värde.
Egenskapsvärden nås med hjälp av objectName.propertyName
eller objectName (“propertyName”)
Till exempel, car1.type eller car1 ('type'), returnerar 'BMW'
Värdet på objektet car1 kan ändras på följande sätt:
car1.type = “Audi”;
Nu,
console.log(car1) ;//This will return {type:'Audi', model:” The BMW X5“ , color:'white'};
F # 35) Är JavaScript ett skiftlägeskänsligt språk?
Svar: Ja, JavaScript är ett skiftlägeskänsligt språk. Betydelsen av detta är nyckelord för språket, variabler, funktionsnamn och andra identifierare som alltid måste skrivas med konsekvent versaler eller gemener.
Till exempel, myVar är en annan variabel än myvar.
F # 36) Hur bestämmer jag vilken datatyp en operand tillhör?
Svar: Operand-datatyp kan hittas med operatörstypen
Den returnerar en sträng som anger typen av operand.
Syntax : typ av operand
typ av (operand)
Operand kan vara vilken variabel, objekt eller funktion som helst.
Till exempel,
console.log (typeof 10);// expected output: 'number' console.log (typeof 'hello');// expected output: 'string' console.log (typeof);//expected output: //'undefined';
F # 37) Varför JavaScript kallas som ett löst skrivet eller ett dynamiskt språk?
Svar: JavaScript kallas som ett löst skrivet eller ett dynamiskt språk eftersom JavaScript-variabler inte är direkt associerade med någon värdetyp och vilken variabel som helst kan tilldelas och omfördelas värden av alla slag:
Till exempel,
var myvar = ‘abc’; // myvar is string myvar =true; // myvar is now a boolean myvar = 10; // myvar is now a number
F # 38) Vad är null i JavaScript?
Svar: Värdet null representerar avsiktlig frånvaro av något objektvärde.
Detta är en av JavaScript: s primitiva värden.
Till exempel,
Var myvar = null; console.log(myvar); //This will print null
F # 39) Vad är NaN?
Svar: NaN är en egenskap hos globalt objekt som representerar Not-A-Number.
Till exempel,
function checkValue(x) { if (isNaN(x)) { return NaN; } return x; } console.log(checkValue ('5')); //expected output: '5' console.log(checkValue (‘Any value’)); //expected output: NaN
F # 40) Hur delar jag en sträng i array-objekt?
Svar: En sträng kan delas in i en array med JavaScript split () -metoden. Den här metoden tar en enda parameter, tecknet du vill separera strängen på, och returnerar delsträngarna mellan separatorn som objekt i en matris.
Till exempel,
myDaysString = ''Sunday,Monday,Tuesday,Wednesday”; String can be split at comma as below: myDaysArray= myDaysString.split(','); console.log(myDaysArray(0)); //output is the first item in the array i.e. Sunday console.log (myDaysArray(myDaysArray.length-1)); //output is the last //item in the array i.e. Wednesday
Fråga # 41) Hur kopplar man array-objekt till en sträng?
Svar: Arrayartiklar kan sammanfogas med metoden join ().
Till exempel,
var myDaysArray= ('Sunday','Monday','Tuesday',”Wednesday”);
Array-objekt sammanfogas i en sträng enligt följande:
myDaysString= myDaysArray.join(','); console.log(myDaysString);//output is joined string i.e.//Sunday,Monday,Tuesday,Wednesday
F # 42) Vilken typ av fel har JavaScript?
Svar: Följande är de två typerna av fel:
- Syntaxfel: Det här är stavfel eller stavfel i koden som gör att programmet inte körs alls eller slutar fungera halvvägs. Vanligtvis tillhandahålls också felmeddelanden.
- Logiska fel: Det här är fel när syntaxen är korrekt, men logiken eller koden är felaktig. Här körs programmet utan fel. Men resultatet är felaktigt. Dessa är ofta svårare att fixa än syntaxfel eftersom dessa program inte ger några felmeddelanden för logiska fel.
F # 43) Hur man hanterar ett stort antal val för ett tillstånd i ett effektivt sätt?
Svar: Detta görs med hjälp av switch-uttalanden:
Till exempel,
switch (expression) { case choice1: code to be run break; case choice2: code to be run break; : : default: code to run if there is no case match }
F # 44) Vad är en ternär operatör?
Svar: Det ternära eller villkorliga är en operatör som används för att göra ett snabbt val mellan två alternativ baserat på ett sant eller falskt test.
Detta kan användas som en ersättning för ... annars block när man har två val som väljs mellan ett sant / falskt tillstånd.
Till exempel,
if (some condition) result = ‘result 1’; else result = ‘result 2’;
Samma kod kan skrivas med en ternär operatör i ett enda uttalande enligt följande:
resultat = (villkor)? 'resultat 1': 'resultat 2';
F # 45) Antag att det finns ett objekt som heter en person
första person = {
namn : {
först: ”Bob”,
sista: 'Smith'
}
};
Vilket av följande är rätt sätt att komma åt objektegenskapen ”först”?
- person.namn.först,eller
- person (‘name’) (‘first’)?
Svar: Båda är korrekta sätt. dvs att använda punkter som person.name.first eller använda parentesnotation som person (‘namn’) (‘första’)
F # 46) Vad är 'detta'?
Svar: Nyckelordet 'detta' hänvisar till det aktuella objektet som koden skrivs inuti.
Detta för att säkerställa att rätt värden används när en medlems sammanhang ändras
Till exempel, det finns två olika förekomster av a person har olika namn och det krävs att skriva ut sitt eget namn i varningen enligt följande:
const person1 = { name: 'Tom', greeting: function() { alert('Good Morning! I am ' + this.name + '.'); } }
Här är produktionen God morgon! Jag är 'Tom'
const person2 = { name: 'Jerry', greeting: function() { alert('Good Morning! I am ' + this.name + '.'); } }
Här är resultatet God morgon! Jag är 'Jerry'
F # 47) Vilka är anonyma funktioner?
Svar: Anonyma funktioner är funktioner utan att ha något namn och gör ingenting på egen hand. Dessa används vanligtvis tillsammans med en händelsehanterare.
Till exempel, i följande kod, anonym funktionskod, dvs varning (”Hej”); skulle köras genom att klicka på tillhörande knapp:
var myButton = document.querySelector('button'); myButton.onclick = function() { alert('Hi'); }
En anonym funktion kan också tilldelas värdet på en variabel.
Till exempel,
var myVar = function() { alert('Hi'); }
Denna funktion kan åberopas med:
myVar();
Slutsats
Det är bättre att lagra JavaScript-koder, CSS och HTML som separata externa js-filer. Att separera kodningsdelen och HTML-delen gör det lättare att läsa och arbeta med dem. Flera utvecklare tycker också att den här metoden är lättare att arbeta med samtidigt.
JavaScript-koden är lätt att underhålla. Samma uppsättning JavaScript-koder kan användas på flera sidor. Om vi använder externa JavaScript-koder och om vi behöver ändra koden måste vi ändra den på ett ställe. Så att vi kan återanvända koden och underhålla dem på ett mycket enklare sätt.
Föreslagen läsning = >> TypeScript vs JavaScript
JavaScript-koden har bättre prestanda. Externa JavaScript-filer ökar sidans laddningshastighet eftersom de cachas av webbläsaren.
Jag hoppas att du har hittat JavaScript-intervjufrågorna och -svaren till hjälp. Öva så många frågor som möjligt och vara säker.
Rekommenderad läsning
- Intervjufrågor och svar
- Topp 32 bästa datastationsintervjuer och svar
- ETL Testing Intervju Frågor och svar
- Topp 20+ .NET-intervjufrågor och svar
- Några knepiga manuella testfrågor och svar
- 25 bästa intervjuer och svar på Agile Testing
- Spock intervjufrågor med svar (mest populära)
- Några intressanta frågor om mjukvarutestning