top 45 javascript interview questions with detailed answers
Најчешће постављана основна и напредна питања о интервјуу за ЈаваСцрипт са детаљним одговорима за сваког програмера ЈаваСцрипт-а.
Ако се припремате за интервју, ево најчешће постављаних питања и одговора за ЈС интервју за вашу референцу.
Исто смо дизајнирали да вас упознамо са питањима која ћете вероватно сусрести током вашег техничког разговора.
Истражимо !!
О ЈаваСцрипт-у
ЈаваСцрипт је програмски језик високог нивоа, вероватно један од најчешће коришћених програмских језика на свету тренутно. Може се користити за програмирање веб прегледача или чак сервера.
Да бисте разумели важност ЈаваСцрипт-а, онемогућите ЈаваСцрипт у свом прегледачу и покушајте да у њега учитате веб страницу. Те веб странице неће радити исправно. Многи садржаји у њима могу се лоше понашати. Готово сви савремени прегледачи користе комбинацију ЈаваСцрипт-а, ЦСС-а и ХТМЛ-а.
ЈаваСцрипт је протумачени програмски језик. Тумач је уграђен у прегледаче попут Гоогле Цхроме-а, Мицрософт Интернет Екплорер-а итд. Дакле, његовим кодом се може управљати помоћу ЈаваСцрипт Енгине-а претраживача.
ЈаваСцрипт се појавио у децембру 1995. године и у почетку се звао ЛивеСцрипт, иако је назив убрзо промењен из маркетиншких разлога. Не треба је мешати са „Јавом“ која такође има неку сличност, али је потпуно другачији језик.
Најчешћа питања о интервјуу за ЈаваСцрипт
П # 1) Шта је ЈаваСцрипт?
Одговор: ЈаваСцрипт је скриптни језик који је развио Нетсцапе. Може се користити за програмирање веб прегледача или чак сервера. Може динамички да ажурира садржај веб странице, у чему је лепота овог језика.
П # 2) Које су предности употребе спољног ЈаваСцрипт-а?
Одговор: Коришћење спољног ЈаваСцрипт-а у нашем коду има много предности.
Они су наведени у наставку.
- Раздвајање кода је извршено.
- Одржавање кода је једноставно.
- Перформансе су боље.
П # 3) У следећем исечку кода можете ли предвидети излаз или Ако добијете грешку, објасните грешку?
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;
Одговори је р : Овај код неће изазвати грешке. Редекларација променљивих је дозвољена у ЈаваСцрипт-у. Дакле, вредност променљиве неће бити изгубљена након извршавања овде израза.
П # 4) У следећем исечку кода можете ли предвидети излаз или Ако добијете грешку; молим вас објасните грешку?
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 ;
Одговор: Овај код неће приказивати грешке!
Излаз исечка кода:
Прва променљива сума је: 70 Сајеесх Среени
Друга променљива сума је: Сајеесх Среени 5020
П # 5) Која је разлика између метода тест () и екец ()?
Одговор: И тест () и екец () су РегЕкп методе изражавања.
Коришћењем а тест () , претраживаћемо низ за дати образац, ако пронађе одговарајући текст, онда враћа логичку вредност „труе“ или пак враћа „фалсе“.
Али у екец () , претражићемо низ за дати образац, ако пронађе одговарајући текст, онда враћа сам образац или враћа вредност „нулл“.
П # 6) Које су предности ЈаваСцрипт-а?
Одговор: Овај скриптни језик има много предности као што је наведено у наставку.
- Лагана: Лако је применити. Има мале отиске меморије.
- Тумачено: То је протумачени језик. Упутства се извршавају директно.
- Објектно оријентисано: То је објектно оријентисани језик.
- Првокласне функције: У ЈаваСцрипт-у се функција може користити као вредност.
- Језик скриптирања: То је језик на којем су написана упутства за радно окружење.
П # 7) У следећем исечку кода можете ли предвидети излаз или Ако добијете грешку; молим вас објасните грешку?
Sample: Software Testing Help
Example Const Variable
const first_num; first_num =1000; document.getElementById('display').innerHTML = 'First Number:'+ first_num;
Одговор: Променљива „цонст“ „фирст_нум“ није иницијализована вредношћу, па ће код произвести синтаксну грешку.
Излаз исечка кода:
Грешка: Унцаугхт СинтакЕррор: Недостаје иницијализатор у цонст декларацији
П # 8) Да ли сте користили неки претраживач за отклањање грешака? Ако је одговор да, како се то ради?
Одговор: Притиском на тастер „Ф12“ на тастатури можемо омогућити отклањање грешака у прегледачу. Изаберите картицу „Конзола“ да бисте видели резултате.
У Конзоли можемо поставити тачке прекида и приказати вредност у променљивим. Сви модерни прегледачи имају уграђени програм за отклањање грешака (На пример: Цхроме, Фирефок, Опера и Сафари ) . Ова функција се може УКЉУЧИТИ И ИСКЉУЧИТИ.
П # 9) Каква је употреба кључне речи ‘програм за отклањање грешака’ у ЈаваСцрипт коду?
Одговор: Коришћење кључне речи ‘отклањање грешака’ у коду је као коришћење тачака прекида у програму за отклањање погрешака.
Да бисте тестирали код, програм за отклањање погрешака мора бити омогућен за прегледач. Ако је отклањање грешака онемогућено за прегледач, код неће радити. Током отклањања грешака у коду, преостали део би требало да престане да се извршава, пре него што пређе на следећи ред.
П # 10) Који су различити типови вредности имена грешака?
Одговор: У својству „Назив грешке“ постоји 6 типова вредности.
Грешка | Опис |
---|---|
Грешка домета | Ову грешку ћемо добити ако користимо број изван опсега |
Синтаксна грешка | Ова грешка се јавља када користимо нетачну синтаксу. (Молимо погледајте питање бр. 7) |
Референтна грешка | Ова грешка се појављује ако се користи непријављена променљива. Погледајте питање бр. 19 |
Евал Еррор | Бачено због грешке у евал (). Нова верзија ЈаваСцрипт-а нема ову грешку |
Упишите грешку | Вредност је изван опсега коришћених типова. Молимо погледајте питање бр. 22 |
УРИ грешка | Због употребе илегалних ликова. |
П # 11) Шта је ЈаваСцрипт Хостинг?
Одговор: Док се користи метода „ЈаваСцрипт Хостинг“, када тумач покрене код, све променљиве се подижу на врх оригиналног / тренутног опсега. Ако негде унутар кода имате декларисану променљиву, она ће бити доведена на врх.
Овај метод је применљив само на декларацију променљиве и није применљив за иницијализацију променљиве. Функције су такође подигнуте на врх, док објашњења функција нису подигнута на врх.
У основи, то где смо прогласили променљиву унутар кода није много битно.
П # 12) Шта је ЈаваСцрипт „строги режим“?
Одговор: „Строги режим“ је ограничена варијанта ЈаваСцрипт-а. Обично овај језик „није баш строг“ у бацању грешака. Али у „Строгом режиму“ бацаће све врсте грешака, чак и тихе грешке. Дакле, процес отклањања грешака постаје лакши. А шансе за грешку програмера су смањене.
П # 13) Које су карактеристике ЈаваСцрипт-а „Строги режим“?
Одговор: Доље су дате карактеристике „строгог режима“:
- „Строги режим“ ће зауставити програмере да креирају глобалне променљиве.
- Програмерима је забрањено коришћење дуплираних параметара.
- Строги режим ће вам ограничити употребу кључне речи ЈаваСцрипт као име променљиве или имена функције.
- Строги режим је декларисан са кључном речи ‘усе стрицт’ на почетку скрипте.
- Сви прегледачи подржавају строги режим.
П # 14) Шта су функције које се самопозивају?
Одговор: Познати су и под називом „Изрази функције са непосредним позивом“ или „Самоизвршавање анонимних функција“. Ове функције се аутоматски позивају у коду, па су стога назване „Функције самопозивања“.
Обично дефинишемо функцију и позивамо је, али ако желимо да аутоматски извршимо функцију тамо где је то објашњено и ако је нећемо поново позивати, можемо користити анонимне функције. А ове врсте функција немају име.
П # 15) Која је синтакса „функције која се позива на себе“? Дати пример?
Одговор:
Синтакса за функцију самозазивања:
(function () { return () } () ;
Овде последња заграда ‘()’ у синтакси наводи да је то израз функције.
Пример самозваних функција:
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'; }());
Овде се анонимна функција аутоматски позива у исечку кода.
Функција се користи за постављање својства текста
ознака чији је идентитет „дисплаи_нум“.
Излаз исечка кода:
Ова функција нема име.
Позива се аутоматски
П # 16) У следећем исечку кода, можете ли предвидети излаз или Ако добијете грешку; молим вас објасните грешку?
Одговор:
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
Погледајте претходни К # 11, како је тамо објашњено, тумач ће одвести све декларисане променљиве осим иницијализације на врх.
Према томе, променљива ‘фирст_нум’ је одведена на врх, а променљива ‘сецонд_нум’ је иницијализована вредношћу, тако да није одведена на врх. Овај код неће створити грешку. Али вредност „други_број“ није дефинисана.
Излаз исечка кода:
Овде је променљива фирст_нум: 100 одведена на врх
Будући да је друга променљива иницијализована, вредност се не води на врх и њена вредност је недефинисана
П # 17) Ако требате сакрити ЈаваСцрипт код од старијих верзија прегледача, како ћете га извести?
Одговор: У Цоде, после ознаке, додајте „
Ово неће дозволити прегледачу да изврши ЈаваСцрипт код ако је његова старија верзија. Такође, након завршне ознаке додајте ’// ->’ ХТМЛ ознаку.
Овај метод ће донекле помоћи у решавању проблема са компатибилношћу и проблема са корисничким интерфејсом.
Sample: Software Testing Help
Овде се фрагмент кода након ознаке извршава у мом прегледачу, јер не користим старију верзију прегледача.
Излаз исечка кода:
Овде не користим старију верзију прегледача.
Дакле, код ће радити у мом прегледачу
П # 18) У следећем исечку кода можете ли предвидети излаз или Ако добијете грешку, објасните грешку?
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();
Одговор: Овде у коду датом горе, вредност променљиве „први_број“ неће бити 1000.
У ЈаваСцрипт-у нема подизања за иницијализацију променљивих. Функција ‘ресулт ()’ ће изабрати локалну променљиву ‘фирст_нум’, како је декларисана унутар функције. Пошто је променљива декларисана након што је употребљена, вредност „први_број“ није дефинисана.
Излаз исечка кода:
Недефинисан
П # 19) Која је разлика између кључне речи „вар“ и „лет“?
Одговор: Разлике су следеће:
Где | дозволити |
---|---|
Кључна реч ’вар’ уведена је у ЈаваСцрипт код од почетка саме Стаге. | Кључна реч ‘лет’ уведена је само 2015. године. |
Кључна реч „Вар“ има опсег функције. Променљива дефинисана вар-ом доступна је било где унутар функције | Променљива декларисана са кључном речи 'лет' има опсег само са у том блоку. Дакле, нека има Блоцк Сцопе. |
Променљива декларисана са „вар“ треба бити подигнута | Променљива декларисана са „нека“ буде подигнута |
П # 20) У следећем исечку кода можете ли предвидети излаз или Ако добијете грешку; молим вас објасните грешку?
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;
Одговор:
Излаз исечка кода:
Први Број : 1000
Добићемо 'Први Број : 1000 ' као излаз. Такође постоји грешка „Неухваћена грешка у референци“.
У исечку кода, опсег „сецонд_нум“ је само унутар блока иф (). Ако програмер покуша да приступи вредности изван блока, добиће „Грешка непохватане референце“.
Неухваћена грешка референце: други_број није дефинисан.
П # 21) Која је разлика између „==“ и „===“?
Одговор: И „==“ и „===“ су оператори упоређивања.
Оператор „==“ | Оператор ‘===’ |
---|---|
Познат је као „Оператер за претварање типова“ | Познат је као „Строги оператор једнакости“ |
Поређује вредност, не упоређује тип | Поређује вредност и врсту. |
П # 22) Која је разлика између „лет“ и „цонст“?
Одговор: Разлике су следеће:
граф имплементација ц ++ листа суседности
дозволити | цонст |
---|---|
помоћу „нека“ можемо променити вредност променљиве било који број пута | помоћу „цонст“, након првог додељивања вредности не можемо поново да дефинишемо вредност |
Узмите у обзир код { нека први_број = 1; први_број = 2; документ. врите (први_број); } Овде ће код дати излаз, јер је могућа промена вредности фирст_нум. | Узмите у обзир код { цонст сецонд_нум = 1; други_број = 2; документ. запис (други_број); } Овде ће код произвести грешку, јер је 'сецонд_нум' додељен другом вредношћу. |
П # 23) У следећем исечку кода можете ли предвидети излаз или Ако добијете грешку; молим вас објасните грешку?
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;
Одговор: Молимо погледајте К # 21 пре него што прочитате даље
Излаз исечка кода:
Први број: 501
Такође ћемо добити грешку током покретања кода, јер покушавамо да променимо вредност променљиве ‘цонст’.
Грешка: Унцаугхт ТипеЕррор: Додељивање константној променљивој.
П # 24) Која је разлика између „нулл“ и „ундефинед“?
Одговор: Обе кључне речи представљају празне вредности .
Разлике су:
- У „ундефинед“ ћемо дефинисати променљиву, али тој променљивој нећемо доделити вредност. С друге стране, у „нулл“ ћемо дефинисати променљиву и променљивој доделити вредност „нулл“.
- тип (недефинисан) и тип (нула) објекта.
П # 25) Која је разлика између „декларације функције“ и „израза функције“?
Одговор: То се може објаснити на примеру:
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);
Као што је приказано у примеру адд () је декларација функције, а субтрацт () је израз функције. Синтакса декларације функције је попут функције која је сачувана у променљивој.
Декларације функција су подигнуте, али изрази функција нису дигнути.
П # 26) Шта су „сеттимеоут ()“?
Одговор: То ће бити боље објашњено на примеру.
Размотрите фрагмент кода
Console.log (‘First Line’); Console.log (‘Second Line’); Console.log (‘Third Line’);
Излаз исечка кода:
Прва линија
Други ред
Трећа линија
Сада уводите методу сеттимеоут () и у њу умотавате исти скуп кода.
Settimeout(function() { Console.log (‘First Line’); },0); Console.log (‘Second Line’); Console.log (‘Third Line’);
Излаз исечка кода:
Други ред
Трећа линија
Прва линија
Увођењем сеттимеоут (), процеси постају асинхрони. Први изрази који се постављају у стек су Цонсоле.лог („Друга линија“) и Цонсоле.лог („Трећа линија“) и они ће се прво извршити. Треба да сачекате док се прво не заврши све у стеку.
Иако је „0“ период истека времена, то не значи да ће се извршити одмах.
П # 27) Шта је затварање и како га користите?
Одговор: Затварање је унутрашња функција. Може приступити спољним променљивим функције. У Затварању, у оквиру функције_1 постоји још једна функција_2 која враћа вредност „А“, а функција_1 такође враћа вредност; реците „Б“.
Овде је сум () спољна функција, а адд () унутрашња функција, може приступити свим променљивим, укључујући „први_број“, „други_број“ и „трећи_број“. Спољна функција позива унутрашњу функцију адд ().
// 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));
Излаз исечка кода:
Резултат је: 500
П # 28) У следећем исечку кода можете ли предвидети излаз или Ако добијете грешку; молим вас објасните грешку?
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; }
Одговор: Изјаве о задатку разматрају се здесна налијево.
Излаз исечка кода:
к = 200
и: 200
са: 200
п: 200
к: 200
П # 29) Можете ли дати пример где исечак кода приказује разлику између метода тест () и екец ()?
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; }
Одговор: Ово је пример методе тест () и екец (), погледајте питање бр. 5 за више детаља.
Излаз исечка кода:
Пронашли смо образац помоћу екец (): Како
Коришћењем теста () резултат је: тачно
П # 30) Можете ли дати пример који показује ЈаваСцрипт дизање?
Одговор:
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
Молимо погледајте К # 11 за више детаља.
Овде се користи променљива „нум“ пре него што је објави. Али ЈаваСцрипт Хостинг ће то дозволити.
Излаз исечка кода:
Овде се користе променљиве пре него што их објаве.
Вредност променљиве је 100
П # 31) Можете ли да дате пример који показује употребу кључне речи ‘отклањање грешака’ у ЈаваСцрипт коду?
Одговор:
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;
Белешка: Програм за отклањање погрешака мора бити омогућен да би прегледач могао да тестира код. Погледајте питање бр. 5 за више детаља
Ово је пример кључне речи за отклањање грешака (коришћени прегледач: Цхроме)
Излаз исечка кода:
Овде за тестирање кода програм за отклањање погрешака мора бити омогућен за прегледач,
током отклањања грешака доњи код треба зауставити извршавање пре него што пређе на следећи ред.
Додавање бројева ...
Изаберите „Настави извршавање скрипте“ да бисте наставили:
Збир бројева: 1500
П # 32) У следећем исечку кода можете ли предвидети излаз или Ако добијете грешку; молим вас објасните грешку?
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 '; }
Одговор: Узмите у обзир код
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
Излаз исечка кода:
Поређење ће приказати „истинито“ према оператору за претварање типова
П # 33) Да ли су Јава и ЈаваСцрипт слични? Ако не, која је разлика између Јаве и ЈаваСцрипт-а?
Одговор:
Сл бр | Јава | ЈаваСцрипт |
---|---|---|
један | Јава је програмски језик опште намене. | ЈаваСцрипт је интерпретирани скриптни језик на високом нивоу. |
два | Јава се заснива на концептима објектно оријентисаног програмирања (ООПС). | ЈаваСцрипт је и објектно оријентисан као и функционални скрипт. |
3 | Покреће се у Јава виртуелној машини (ЈВМ) или прегледачу. | Ради само у прегледачу. |
4 | Јава код треба да се компајлира као датотека Јава класе. | ЈаваСцрипт нема корак компајлирања. Уместо тога, тумач у прегледачу чита ЈаваСцрипт код, тумачи сваки ред и покреће га. |
Дакле, укратко, ови језици уопште нису повезани или зависни један од другог.
П # 34) Које типове података подржава ЈаваСцрипт?
Одговор: ЈаваСцрипт подржава следеће Седам примитивни типови података и Предмет :
(и) логичка вредност: Ово је логичан тип података који може имати само две вредности, тј. Труе или фалсе. Када проверимо тип података „труе“ или „фалсе“ помоћу типеоф оператора, он даје логичку вредност.
На пример, типеоф (труе) // враћа логичко
Логичке вредности могу се користити за поређење две променљиве.
На пример,
var x = 2; var y = 3; x==y //returns false
Логова вредност се такође може користити за проверу стања
На пример,
var x = 2; var y = 3; If(xАко је горњи услов ‘х Булова променљива се може креирати помоћу функције Боолеан ().
var myvar = ‘Hi'; Boolean(myvar); // This returns true because the 'myvar' value exists
Такође, логички објекат се може креирати помоћу новог оператора на следећи начин:
var myobj = new Boolean(true);
(ИИ) Нулл :Ово је тип података који је представљен само једном вредношћу, самом 'нулом'. Нулта вредност значи да нема вредности.
На пример,
var x = null; console.log(x);// This returns null
Ако проверимо тип података а користећи типеоф оператор, добићемо:
typeof(x); // This returns object. type of a null value is an object, not null.
(иии) Недефинисано: Овај тип података значи променљиву која није дефинисана. Променљива је декларисана, али не садржи никакву вредност.
На пример,
var x; console.log(x); // This returns undefined x=10;//Assign value to x console.log(x); // This returns 10
Променљива „а“ је декларисана, али јој још увек није додељена вредност.
Можемо доделити вредност:
(ив) Број: Овај тип података може бити вредност са покретном зарезом, цео број, експоненцијална вредност, „НаН“ или „Бесконачност“.
На пример,
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
Бројевни литерал се може креирати помоћу функције Нумбер ():
var x = Number(10); console.log(x);// This returns 10
Такође, објект броја може се креирати помоћу оператора „нови“ на следећи начин:
var x= new Number(10); console.log(x); // This returns 10
(в) БигИнт: Ово је нумерички примитив који може представљати целе бројеве са произвољном прецизношћу. БигИнт се креира додавањем н на крај целог броја
На пример,
const x = 15n;
Број се може претворити у БигИнт помоћу функције БигИнт (број).
const x = 251; const y = BigInt(x); y === 251n // returns true
(ви) Низ: Овај тип података користи се за представљање текстуалних података.
На пример,
var strVar1 = “Hi,how are you?”; var strVar2 = ‘Hi,how are you?’;
Нови низ се такође може креирати помоћу функције Стринг () на следећи начин:
var strVar3 = String(‘Hi,how are you?’); // This creates a string literal with value ‘Hi,how are you?’
Функција Стринг () се такође користи за претварање вредности која није низ у низ.
String(150); // This statement will create a string ‘150’
Стринг се такође може креирати помоћу 'Нова' оператер
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?’
ЈаваСцрипт низови су непроменљиви, тј. Када се низ створи, не може се мењати. Али други низ се може створити операцијом на оригиналном низу.
На пример,
- Спајањем два низа помоћу оператора повезивања (+) или Стринг.цонцат () .
- Добијањем подниза помоћу Стринг.субстр () .
(вии) Симбол: Ово је јединствена и непроменљива примитивна вредност и користи се као кључ својства Објецт. Симболи су нови за ЈаваСцрипт у ЕЦМАСцрипт 2015
ДО Симбол вредност представља јединствени идентификатор.
На пример,
var symVar1 = Symbol('Symbol1'); let symVar2 = Symbol('Symbol1'); console.log(symVar1 === symVar2); // This returns 'false'.
Дакле, многи симболи су створени са истим описом, али са различитим вредностима.
Симболи се не могу аутоматски претворити.
На пример,
var symVar1 = Symbol('Symbol1'); alert(symVar1); // This gives TypeError: Cannot convert a Symbol value to a string
Ово се може радити помоћу тоСтринг () као што следи:
alert(symVar1.toString()); // Symbol(symVar1), this works
Тип података о објекту
Објект је вредност у меморији на коју се позива идентификатор.
Објекат се односи на структуру података која садржи податке и упутства за рад са подацима. Предмети се понекад односе на ствари из стварног света, На пример, запосленог или аутомобила.
На пример,
У ЈаваСцрипт објектима вредности се записују као име: вредност парови као испод:
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' };
Тхе име: вредности зову се парови својства . На пример, „Тип“ је имовина, а „БМВ“ вредност имовине.
Вредностима својстава приступа се помоћу објецтНаме.пропертиНаме
или објецтНаме (“пропертиНаме”)
На пример, цар1.типе или цар1 („типе“), враћа „БМВ“
Вредност објекта цар1 може се променити на следећи начин:
car1.type = “Audi”;
Сада,
console.log(car1) ;//This will return {type:'Audi', model:” The BMW X5“ , color:'white'};
П # 35) Да ли је ЈаваСцрипт језик који разликује велика и мала слова?
Одговор: Да, ЈаваСцрипт је језик који разликује велика и мала слова. Значење овога су кључне речи језика, променљиве, имена функција и било који други идентификатори који се увек морају откуцати доследним великим или малим словима.
На пример, миВар је различита променљива од мивар.
П # 36) Како одредити којем типу података припада операнд?
Одговор: Тип података операнда може се наћи помоћу оператора типеоф
Враћа низ који указује на тип операнда.
Синтакса : тип операнда
типеоф (операнд)
Операнд може бити било која променљива, објекат или функција.
На пример,
console.log (typeof 10);// expected output: 'number' console.log (typeof 'hello');// expected output: 'string' console.log (typeof);//expected output: //'undefined';
П # 37) Зашто се ЈаваСцрипт назива лабавим или динамичним језиком?
Одговор: ЈаваСцрипт се назива лабаво откуцаним или динамичким језиком, јер ЈаваСцрипт променљиве нису директно повезане са било којим типом вредности и било којој променљивој могу се доделити и поново доделити вредности свих типова:
На пример,
var myvar = ‘abc’; // myvar is string myvar =true; // myvar is now a boolean myvar = 10; // myvar is now a number
П # 38) Шта је нулл у ЈаваСцрипт-у?
Одговор: Вредност нулл представља намерно одсуство било које вредности објекта.
Ово је једна од примитивних вредности ЈаваСцрипт-а.
На пример,
Var myvar = null; console.log(myvar); //This will print null
П # 39) Шта је НаН?
Одговор: НаН је својство глобалног објекта који представља Нот-А-Нумбер.
На пример,
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
П # 40) Како поделити низ на ставке низа?
Одговор: Низ се може поделити у низ помоћу ЈаваСцрипт сплит () методе. Ова метода узима један параметар, знак којим желите раздвојити низ, и враћа поднизове између сепаратора као ставке у низу.
На пример,
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
П # 41) Како спојити ставке низа у низ?
Одговор: Ставке низа могу се придружити методом јоин ().
На пример,
var myDaysArray= ('Sunday','Monday','Tuesday',”Wednesday”);
Ставке низа спојене су у низ на следећи начин:
myDaysString= myDaysArray.join(','); console.log(myDaysString);//output is joined string i.e.//Sunday,Monday,Tuesday,Wednesday
П # 42) Коју врсту грешака има ЈаваСцрипт?
Одговор: Следе 2 врсте грешака:
- Синтаксне грешке: То су грешке у куцању или грешке у правопису у коду због којих се програм уопште не покреће или престаје са радом на пола. Обично се пружају и поруке о грешкама.
- Логичке грешке: То су грешке када је синтакса тачна, али логика или код нису тачни. Овде се програм успешно изводи без грешака. Али излазни резултати су нетачни. Често их је теже поправити него синтаксне грешке, јер ови програми не дају поруке о грешкама због логичких грешака.
П # 43) Како ефикасно обрадити велики број избора за један услов начин?
Одговор: То се ради помоћу наредби прекидача:
На пример,
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 }
П # 44) Шта је тернарни оператор?
Одговор: Тернарни или условни је оператор који се користи за брзи избор између две опције на основу тачног или нетачног теста.
Ово се може користити као замена за блок иф ... елсе када имате два избора која се бирају између тачног / нетачног стања.
На пример,
if (some condition) result = ‘result 1’; else result = ‘result 2’;
Исти код се може написати помоћу тернарног оператора у једној изјави на следећи начин:
резултат = (услов)? ‘резултат 1’: ‘резултат 2’;
П # 45) Претпоставимо да постоји објекат који се зове особа
цонст персон = {
наме: {
прво: „Боб“,
последње: „Смитх“
}
};
Шта је од наведеног тачан начин да се својству објекта приступи „прво“?
- персон.наме.фирст,или
- особа („име“) („прво“)?
Одговор: Оба су тачна начина. тј. коришћење тачака попут персон.наме.фирст или коришћење заградних записа попут персон (‘наме’) (‘фирст’)
П # 46) Шта је „ово“?
Одговор: Кључна реч ‘тхис’ односи се на тренутни објекат у који је записан код.
Ово омогућава да се користе тачне вредности када се контекст члана промени
На пример, постоје два различита случаја а особа који имају различита имена и потребно је да у упозорењу одштампају своја имена на следећи начин:
const person1 = { name: 'Tom', greeting: function() { alert('Good Morning! I am ' + this.name + '.'); } }
Ево, излаз је Добро јутро! Ја сам „Том“
const person2 = { name: 'Jerry', greeting: function() { alert('Good Morning! I am ' + this.name + '.'); } }
Ево, излаз је Добро јутро! Ја сам 'Јерри'
П # 47) Шта су анонимне функције?
Одговор: Анонимне функције су функције без икаквог имена и неће ништа радити саме. Они се обично користе заједно са управљачем догађаја.
На пример, у следећем коду, анонимни код функције, тј. упозорење („Здраво“); покренуо би се кликом на повезано дугме:
var myButton = document.querySelector('button'); myButton.onclick = function() { alert('Hi'); }
Анонимна функција се такође може доделити вредности променљиве.
На пример,
var myVar = function() { alert('Hi'); }
Ову функцију можете позвати помоћу:
myVar();
Закључак
ЈаваСцрипт кодове, ЦСС и ХТМЛ је боље чувати као одвојене спољне „јс“ датотеке. Одвајање дела кодирања и ХТМЛ дела олакшаће читање и рад са њима. Вишеструким програмерима је такође лакше да истовремено раде са овом методом.
ЈаваСцрипт код је једноставан за одржавање. Исти скуп ЈаваСцрипт кодова може се користити на више страница. Ако користимо екстерне ЈаваСцрипт кодове и ако морамо да променимо код, онда га морамо променити на једном месту. Тако да можемо поново користити код и одржавати их на много лакши начин.
Предложено читање = >> ТипеСцрипт вс ЈаваСцрипт
ЈаваСцрипт код има боље перформансе. Спољне ЈаваСцрипт датотеке ће повећати брзину учитавања странице јер ће их прегледач кеширати.
Надам се да су вам питања и одговори у вези са интервјуом за ЈаваСцрипт били корисни. Вежбајте што више питања и будите самопоуздани.
Препоручено читање
- Интервјуирајте питања и одговоре
- 32 најбоља питања и одговори за интервју за Датастаге
- Питања и одговори за испитивање ЕТЛ-а
- Топ 20+ .НЕТ питања и одговори за интервјуе
- Нека незгодна ручна тестирања питања и одговори
- 25 најбољих агилних тестова за интервју и питања и одговори
- Споцк интервју питања са одговорима (најпопуларније)
- Нека занимљива питања за испитивање софтверског тестирања