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

Popular posts from this blog

Node JS:Understanding bin in package.json.

Node.js: create an excel file with multiple tabs.

Node.js: Downloading a xml file from given url and reading its data elements.