LinkedIn JavaScript Skill Assessment 82 Questions.
Q1. Which operator returns true if the two compared values are not equal?
- <>
- ~
- ==!
- !==
Q2. How is a forEach statement different from a for a statement?
- Only a for statement uses a callback function.
- A for statement is generic, but a forEach statement can be used only with an array.
- Only a forEach statement lets you specify your own iterator.
- A forEach statement is generic, but a for statement can be used only with an array.
Q3. Review the code below. Which statement calls the addTax function and passes 50 as an argument?
function addTax(total) {
return total * 1.05;
}
- addTax = 50;
- return addTax 50;
- addTax(50);
- addTax 50;
Q3. How would you use this function to find out how much tax should be paid on $50?
(Version 2, possibly an updated version)
function addTax(total) {
return total * 1.05;
}
- addTax($50);
- return addTax 50;
- addTax(50);
- addTax 50;
Q4. Which statement is the correct way to create a variable called rate and assign it the value 100?
- let rate = 100;
- let 100 = rate;
- 100 = let rate;
- rate = 100;
Q5. Which statement creates a new Person object called “student”?
- var student = new Person();
- var student = construct Person;
- var student = Person();
- var student = construct Person();
Q6. When would the final statement in the code shown be logged to the console?
let modal = document.querySelector(‘#result’);
setTimeout(function(){
modal.classList.remove(‘hidden);
}, 10000);
console.log(‘Results shown’);
- after 10 second
- after results are received from the HTTP request
- after 10000 seconds
- immediately
Q6. When would ‘results shown’ be logged to the console?
(Version 2, possibly an updated version)
let modal = document.querySelector(‘#results’);
setTimeout(function () {
modal.classList.remove(‘hidden’);
}, 10000);
- immediately
- after results are received from the HTTP request
- after 10 second
- after 10,000 seconds
Q7. You’ve written the code shown to log a set of consecutive values, but it instead results in the value 5, 5, 5, and 5 being logged to the console. Which revised version of the code would result in the value 1, 2, 3 and 4 being logged?
for (var i = 1; i <= 4; i++) {
setTimeout(function () {
console.log(i);
}, i * 10000);
}
- for (var i=1; i<=4; i++){ (function(i){ setTimeout(function(){ console.log(j); }, j*1000); })(j) }
- while (var i=1; i<=4; i++) { setTimeout(function() { console.log(i); }, i*1000); }
- for (var i=1; i<=4; i++) { (function(j) { setTimeout(function(){ console.log(j); }, j*1000); })(i) }
- for (var j=1; j<=4; j++) { setTimeout(function() { console.log(j); }, j*1000); }
Q8. How does a function create a closure?
- It reloads the document whenever the value changes.
- It returns a reference to a variable in its parent scope.
- It completes execution without returning.
- It copies a local variable to the global scope.
Q9. Which statement creates a new function called discountPrice?
- let discountPrice = function(price) { return price * 0.85; };
- let discountPrice(price) { return price * 0.85; };
- let function = discountPrice(price) { return price * 0.85; };
- discountPrice = function(price) { return price * 0.85; };
Q10. What is the result in the console of running the code shown?
var Storm = function () {};
Storm.prototype.precip = ‘rain’;
var WinterStorm = function () {};
WinterStorm.prototype = new Storm();
WinterStorm.prototype.precip = ‘snow’;
var bob = new WinterStorm();
console.log(bob.precip);
- Storm()
- undefined
- ‘rain’
- ‘snow’
Q11. You need to match a time value such as 12:00:32. Which of the following regular expressions would work for your code?
- /[0-9]{2,}:[0-9]{2,}:[0-9]{2,}/
- /\d\d:\d\d:\d\d/
- /[0-9]+:[0-9]+:[0-9]+/
- / : : /
Q12. What is the result in the console of running this code?
‘use strict’;
function logThis() {
this.desc = ‘logger’;
console.log(this);
}
new logThis();
- undefined
- window
- {desc: “logger”}
- function
Q13. How would you reference the text ‘avenue’ in the code shown?
let roadTypes = [‘street’, ‘road’, ‘avenue’, ‘circle’];
- roadTypes.2
- roadTypes[3]
- roadTypes.3
- roadTypes[2]
Q14. What is the result of running this statement?
console.log(typeof(42));
- ‘float’
- ‘value’
- ‘number’
- ‘integer’
Q15. Which property references the DOM object that dispatched an event?
- self
- object
- target
- source
Q16. You’re adding error handling to the code shown. Which code would you include within the if statement to specify an error message?
function addNumbers(x, y) {
if (isNaN(x) || isNaN(y)) {
}
}
- exception(‘One or both parameters are not numbers’)
- catch(‘One or both parameters are not numbers’)
- error(‘One or both parameters are not numbers’)
- throw(‘One or both parameters are not numbers’)
Q17. Which method converts JSON data to a JavaScript object?
- JSON.fromString();
- JSON.parse()
- JSON.toObject()
- JSON.stringify()
Q18. When would you use a conditional statement?
- When you want to reuse a set of statements multiple times.
- When you want your code to choose between multiple options.
- When you want to group data together.
- When you want to loop through a group of statement.
Q19. What would be the result in the console of running this code?
for (var i = 0; i < 5; i++) {
console.log(i);
}
- 12345
- 1234
- 01234
- 012345
Q20. Which Object method returns an iterable that can be used to iterate over the properties of an object?
- Object.get()
- Object.loop()
- Object.each()
- Object.keys()
Q21. After the following code, what is the value of a.length?
var a = [‘dog’, ‘cat’, ‘hen’];
a[100] = ‘fox’;
console.log(a.length);
- 101
- 3
- 4
- 100
Q22. What is one difference between collections created with Map and collections created with Object?
- You can iterate over values in a Map in their insertion order.
- You can count the records in a Map with a single method call.
- Keys in Maps can be strings.
- You can access values in a Map without iterating over the whole collection.
- Map.prototype.size returns the number of elements in a Map, whereas Object does not have a built-in method to return its size.
Q23. What is the value of dessert.type after executing this code?
const dessert = { type: ‘pie’ };
dessert.type = ‘pudding’;
- pie
- The code will throw an error.
- pudding
- undefined
Q24. 0 && hi
- ReferenceError
- True
- 0
- false
Q25. Which of the following operators can be used to do a short-circuit evaluation?
- ++
- —
- ==
- ||
Q26. Which statement sets the Person constructor as the parent of the Student constructor in the prototype chain?
- Student.parent = Person;
- Student.prototype = new Person();
- Student.prototype = Person;
- Student.prototype = Person();
Q27. Why would you include a “use strict” statement in a JavaScript file?
- to tell parsers to interpret your JavaScript syntax loosely
- to tell parsers to enforce all JavaScript syntax rules when processing your code
- to instruct the browser to automatically fix any errors it finds in the code
- to enable ES6 features in your code
Q28. Which Variable-defining keyword allows its variable to be accessed (as undefined) before the line that defines it?
- all of them
- const
- var
- let
Q29. Which of the following values is not a Boolean false?
- Boolean(0)
- Boolean(“”)
- Boolean(NaN)
- Boolean(“false”)
Q30. Which of the following is not a keyword in JavaScript?
- this
- catch
- function
- array
Q31. Which variable is an implicit parameter for every function in JavaScript?
- Arguments
- args
- argsArray
- argumentsList
Q32. For the following class, how do you get the value of 42 from an instance of X?
class X {
get Y() {
return 42;
}
}
- x.get(‘Y’)
- x.Y
- x.Y()
- x.get().Y
Q33. What is the result of running this code?
sum(10, 20);
diff(10, 20);
function sum(x, y) {
return x + y;
}
let diff = function (x, y) {
return x – y;
};
- 30, ReferenceError, 30, -10
- 30, ReferenceError
- 30, -10
- ReferenceError, -10
Q34. Why is it usually better to work with Objects instead of Arrays to store a collection of records?
- Objects are more efficient in terms of storage.
- Adding a record to an object is significantly faster than pushing a record into an array.
- Most operations involve looking up a record, and objects can do that better than arrays.
- Working with objects makes the code more readable.
Q35. Which statement is true about the “async” attribute for the HTML script tag?
- It can be used for both internal and external JavaScript code.
- It can be used only for internal JavaScript code.
- It can be used only for internal or external JavaScript code that exports a promise.
- It can be used only for external JavaScript code.
Q36. How do you import the lodash library making it top-level Api available as the “_” variable?
- import _ from ‘lodash’;
- import ‘lodash’ as _;
- import ‘_’ from ‘lodash;
- import lodash as _ from ‘lodash’;
Q37. What does the following expression evaluate to?
[] == [];
- True
- undefined
- []
- False
Q38. What is the name of a function whose execution can be suspended and resumed at a later point?
- Generator function
- Arrow function
- Async/ Await function
- Promise function
Q39. What will this code print?
f2();
- 2
- 1
- Nothing – this code will throw an error.
- undefined
Q40. Which statement is true about Functional Programming?
- Every object in the program has to be a function.
- Code is grouped with the state it modifies.
- Date fields and methods are kept in units.
- Side effects are not allowed.
Q41. Your code is producing the error: TypeError: Cannot read property ‘reduce’ of undefined. What does that mean?
- You are calling a method named reduce on an object that’s declared but has no value.
- You are calling a method named reduce on an object that does not exist.
- You are calling a method named reduce on an empty array.
- You are calling a method named reduce on an object that’s has a null value.
Q42. How many prototype objects are in the chain for the following array?
let arr = [];
- 3
- 2
- 0
- 1
Q43. Which choice is not a unary operator?
- typeof
- delete
- instanceof
- void
Q44. What type of scope does the end variable have in the code shown?
var start = 1;
if (start === 1) {
let end = 2;
}
- conditional
- block
- global
- function
Q45. What will the value of y be in this code:
const x = 6 % 2;
const y = x ? ‘One’ : ‘Two’;
- One
- undefined
- TRUE
- Two
Q46. Which keyword is used to create an error?
- throw
- exception
- catch
- error
Q47. What’s one difference between the async and defer attributes of the HTML script tag?
- The defer attribute can work synchronously.
- The defer attribute works only with generators.
- The defer attribute works only with promises.
- The defer attribute will asynchronously load the scripts in order.
Q48. The following program has a problem. What is it?
var a;
var b = (a = 3) ? true : false;
- The condition in the ternary is using the assignment operator.
- You can’t define a variable without initializing it.
- You can’t use a ternary in the right-hand side of an assignment operator.
- The code is using the deprecated var keyword.
Q48. This program has a problem. What is it?
(Version 2, possibly an updated version)
var a;
var b = (a = 3) ? true : false;
- You cannot use a ternary operator in the right-hand side of an assignment.
- You cannot define a variable without initializing it first.
- The condition in the ternary statement is using the assignment operator.
- The code is using the deprecated var keyword.
Q49. Which statement references the DOM node created by the code shown?
<p class=”pull”>lorem ipsum</p>
- Document.querySelector(‘class.pull’)
- document.querySelector(‘.pull’);
- Document.querySelector(‘pull’)
- Document.querySelector(‘#pull’)
Q50. What value does this code return?
let answer = true;
if (answer === false) {
return 0;
} else {
return 10;
}
- 10
- true
- false
- 0
Q51. What is the result in the console of running the code shown?
var start = 1;
function setEnd() {
var end = 10;
}
setEnd();
console.log(end);
- 10
- 0
- ReferenceError
- undefined
Q52. What will this code log in the console?
function sayHello() {
console.log(‘hello’);
}console.log(sayHello.prototype);
- undefined
- “hello”
- an object with a constructor property
- an error message
Q53: Which collection object allows unique value to be inserted only once?
- Object
- Set
- Array
- Map
Q54. What two values will this code print?
function printA() {
console.log(answer);
var answer = 1;
}
printA();
printA();
- 1 then 1
- 1 then undefined
- undefined the undefined
- undefined the 1
Q55. For the following class, how do you get the value of 42 from “X” ?
class X {
get Y() {
return 42;
}
}
var x = new X();
- x.Y
- x.Y()
- x.get(‘Y’)
- x.get().Y
Q56. How does the forEach() method differ from a for statement?
- forEach allows you to specify your own iterator, whereas for does not.
- forEach can be used only with strings, whereas for can be used with additional data types.
- forEach can be used only with an array, whereas for can be used with additional data types.
- for loops can be nested; whereas forEach loops cannot.
Q57. What will be logged to the console?
‘use strict’;
function logThis() {
this.desc = ‘logger’;
console.log(this);
}
new logThis();
- undefined
- function
- windows
- {desc: “logger”}
Q58. Which choice is an incorrect way to define an arrow function that returns an empty object?
- => ({})
- => {}
- => { return {};}
- => (({}))
Q59. Why might you choose to make your code asynchronous?
- to start tasks that might take some time without blocking subsequent tasks from executing immediately
- to ensure that tasks further down in your code are not initiated until earlier tasks have completed
- to make your code faster
- to ensure that the call stack maintains a LIFO (Last in, First Out) structure
Q60. Which expression evaluates to true?
- [3] == [3]
- 3 == ‘3’
- 3 != ‘3’
- 3 === ‘3’
Q61. Which of these is a valid variable name?
- 5thItem
- firstName
- grand total
- function
Q62. Which method cancels event default behavior?
- cancel()
- stop()
- preventDefault()
- prevent()
Q63. Which method do you use to attach one DOM node to another?
- attachNode()
- getNode()
- querySelector()
- appendChild()
Q64. Which statement is used to skip iteration of the loop?
- break
- pass
- skip
- continue
Q65. Which choice is valid example for an arrow function?
- (a,b) => c
- a, b => {return c;}
- a, b => c
- { a, b } => c
Q66. Which concept is defined as a template that can be used to generate different objects that share some shape and/or behavior?
- class
- generator function
- map
- proxy
Q67. How do you add a comment to JavaScript code?
- ! This is a comment
- # This is a comment
- \ This is a comment
- // This is a comment
Q68. If you attempt to call a value as a function but the value is not a function, what kind of error would you get?
- TypeError
- SystemError
- SyntaxError
- LogicError
Q69. Which method is called automatically when an object is initialized?
- create()
- new()
- constructor()
- init()
Q70. What is the result of running the statement shown?
let a = 5;
console.log(++a);
- 4
- 10
- 6
- 5
Q71. You’ve written the event listener shown below for a form button, but each time you click the button, the page reloads. Which statement would stop this from happening?
button.addEventListener(
‘click’,
function (e) {
button.className = ‘clicked’;
},
false,
);
- e.blockReload();
- button.preventDefault();
- button.blockReload();
- e.preventDefault();
Q72. Which statement represents the starting code converted to an IIFE?
- function() { console.log(‘lorem ipsum’); }()();
- function() { console.log(‘lorem ipsum’); }();
- (function() { console.log(‘lorem ipsum’); })();
Q73. Which statement selects all img elements in the DOM tree?
- Document.querySelector(‘img’)
- Document.querySelectorAll(‘<img>’)
- Document.querySelectorAll(‘img’)
- Document.querySelector(‘<img>’)
Q74. Why would you choose an asynchronous structure for your code?
- To use ES6 syntax
- To start tasks that might take some time without blocking subsequent tasks from executing immediately
- To ensure that parsers enforce all JavaScript syntax rules when processing your code
- To ensure that tasks further down in your code aren’t initiated until earlier tasks have completed
Q75. What is the HTTP verb to request the contents of an existing resource?
- DELETE
- GET
- PATCH
- POST
Q76. Which event is fired on a text field within a form when a user tabs to it, or clicks or touches it?
- focus
- blur
- hover
- enter
Q77. What is the result in the console of running this code?
function logThis() {
console.log(this);
}
logThis();
- function
- undefined
- Function.prototype
- window
Q78. Which class-based component is equivalent to this function component?
Q79. Which class-based lifecycle method would be called at the same time as this effect Hook?
useEffect(() => {
// do things
}, []);
- componentWillUnmount
- componentDidUpdate
- render
- componentDidMount
Q80. What is the output of this code?
var obj;
console.log(obj);
- ReferenceError: obj is not defined
- {}
- undefined
- null
Q81. What will be logged to the console?
var a = [‘dog’, ‘cat’, ‘hen’];
a[100] = ‘fox’;
console.log(a.length);
- 4
- 100
- 101
- 3
Q82. How would you use the TaxCalculator to determine the amount of tax on $50?
class TaxCalculator {
static calculate(total) {
return total * 0.05;
}
}
- calculate(50);
- new TaxCalculator().calculate($50);
- TaxCalculator.calculate(50);
- new TaxCalculator().calculate(50);
Comments
Post a Comment