Programming interview questions

Hi, in this post you will find a list of some programming interview questions that you can use to evaluate the candidate technical skills.

1.- What is the value of z after the following code runs?

``````let x = { 'foo': 'bar' };
let y = {'baz': x};
let z = y['baz']['foo'];

console.log('z--->', z);``````

2.- What’s the expected output of the following JavaScript code?

``````function foo() {
function bar() {
setTimeout(
() => console.log('Curly'), // 3 execution
1000);
}

console.log('Larry'); // 1 execution
return bar;
}

let x = foo();
x();
console.log('Moe'); // 2 execution``````

3.-What is the value of g after the following code block runs?

``````function f(x) { // (3)
x *= 2; // 3 x 2 = 6 ---> x = 6 now

return function(y) { // (4)
y *= x; // 4 x 6 = 24 ---> y = 24 now

return function(z) { // (5)
return z * y; // 5 x 24 = 120 ---> z = 120 now, the finall return is 120
}
}
}

let g = f(3)(4)(5);
console.log(g); // 120``````

4.- Fill in the missing code

Get the cumulative sum of a list
Example: acumulative_sum([1,2,3,4,5]); the result will be => [ 1, 3, 6, 10, 15 ]

``````function acumulative_sum(list) {
let output = [];

for (let i = 0; i < list.length; i++) {
if (i == 0) {
output.push(list[i]);
} else {
}
}

return output;
}

let result = acumulative_sum([1,2,3,4,5]);

console.log('result--->', result);``````

``````function acumulative_sum(list) {
let output = [];

for (let i = 0; i < list.length; i++) {
if (i == 0) {
output.push(list[i]);
} else {
output.push(list[i] + output[i-1]);
}
}

return output;
}

let result = acumulative_sum([1,2,3,4,5]);

console.log('result--->', result);``````

5.- Fill in the missing code

``````function strToFloat(str) {
}

let result = strToFloat('.5');

console.log('result --->', result);
console.log('result type --->', typeof result);``````

``````function strToFloat(str) {
return parseFloat(str); // parses a string and returns a floating point number.
}

let result = strToFloat('.5');

console.log('result --->', result);
console.log('result type --->', typeof result);``````

6.- What is the value of the variable eventPrice after the following code runs?

``````let event = {
name: "Hot Dog and Burger Sunday",
financials: {
baseCost: "\$19.99",
discountAvailable: false,
maxCost: "\$29.99"
},
subscribers: [

]
};

let eventPrice;

// Destructuring that get baseCost property also rename that property by price
const assignEvent = ({ financials: { baseCost: price }}) => eventPrice = price; // assign price value to the variable eventPrice.

let result = assignEvent(event); // Assigning an object to the function
console.log('result --->', result);``````

7.- In what order does f receive its arguments?

``````f("foo");
setTimeout(function() { f("bar"); }, 0);
f("baz");``````

foo, baz, bar -> because this reason.

8.- Which of the las four variables contains the array [“chain”, “deo”, “grills”] ?

``````const getItemsOrderByCustomer = customer => (...orders) => {
return orders.filter(order => order.customerId === customer.id)
.map(order => order.items)
.reduce((acc, cur) => [...acc, ...cur], []);
}

let customer = {
name: "fiddy",
id: 5
};

const order1 = { id: 1, customerId: 1, items: ["belt"]};
const order2 = { id: 2, customerId: 5, items: ["chain", "deo"]};
const order3 = { id: 3, customerId: 5, items: ["grills"]};
const order4 = { id: 4, customerId: 2, items: ["pants"]};

const w = getItemsOrderByCustomer(customer)(order1, order2, order3, order4);
const x = getItemsOrderByCustomer(customer)([order1, order2, order3, order4]);
const y = getItemsOrderByCustomer(customer, order1, order2, order3, order4);
const z = getItemsOrderByCustomer(customer)(order1, order2, order4);``````

The w const is the answer.

9.- What does the following code do?

``````function myStr(str) {
return str.split('dog').join('cat');
}

console.log(myStr('cristina hola dog xxxx dog yyy'));``````