Top 10 des questions basées sur le code d’entrevue Javascript (Faisons du brainstorming) | de Ritik Chopra | août 2022

1. Quelle sera la sortie des lignes de code ci-dessous ?

console.log("11"-1);                          // 10console.log("11"+1);                          // "111"console.log(0 === [[[0]]]);                   // falseconsole.log(0 == [[[0]]]);                    // trueconsole.log(0 === "0");                       // falseconsole.log(0 == "0");                        // trueconsole.log([1,[2,[3,[4,[5]]]]].toString())   // 1,2,3,4,5

2. Comment convertir le tableau multidimensionnel en efficacité de tableau 1-D ?

const arr = [1,[2,[3,[4,[5]]]]]
const dArray = arr.toString().split(',').map((num) => Number(num))

3. Créez des promesses de nombres de 1 à 10 avec un délai aléatoire et imprimez-les en séries continues de 1 à 10.

const delay = (val, ms) => new Promise(resolve => setTimeout(resolve(val), ms));const promiseArr = []
for(let i=1; i<=10;i++) {
promiseArr.push(delay(i, Math.random()%5));
}
const result = Promise.all(promiseArr)
result.then(res => {
console.log(res) // [1,2,3,4,5,6,7,8,9,10]
})

4. Comment vérifier si la valeur de l’objet est un objet ou non ?

typeof yourVariable === 'object' && yourVariable !== null

5. Comment créer un switch personnalisé en Javascript ?

const match = (expr, allCases) => {
return allCases[expr] || allCases?.default;
}
const allCases = {
Hi: 'good morning',
Red: "color",
BMW: "my favourite",
default: "not available"
}
const matched = match('Hi', allCases)
const notMatched = match('Not', allCases)
console.log(matched) // Good Morning
console.log(notMatched) // not available

6. Quelle sera la sortie du code ci-dessous ?

const a = Number(1)
const b = Number(2)
const c = "1"
const d = "2"
console.log(typeof a * b) // NaN
console.log(typeof c * d) // NaN
console.log(typeof a * c) // NaN
console.log((a*b) == (c*d)) // true
console.log((a*b) === (c*d)) // true
console.log(typeof Number(a * b)) // number
console.log(typeof Number(c * d)) // number

7. Quelle sera la sortie du code ci-dessous ?

const arr = [1,2,3,4]
arr.length = 0; // don't do this in your life
console.log(arr) // []console.log("1" - "2" + "3" + "4" * "5")
// first * occurs and result will be
// "1" - "2" + "3" + "20"
// now left to right flow goes
// "-1" + "3" + "20"
// "-1320"

8. Nous avons trois promesses avec le nom et le délai, (lent, 200), (rapide, 50), (instantané, 0), et toutes doivent se résoudre en même temps et l’ordre doit se maintenir en séries lentes, rapides et instantanées .

const slow = new Promise(resolve => {
setTimeout(resolve, 200, 'slow');
});
const instant = new Promise(resolve => {
setTimeout(resolve, 0, 'instant');
}); ;
const quick = new Promise(resolve => {
setTimeout(resolve, 50, 'quick');
});
const result = Promise.all([slow, quick, instant])result.then((res) => {
console.log(res)
})

9. Quelle sera la sortie du code ci-dessous ?

var a={name:"RKstar"}
var b={name:"RKstar"}
console.log(a===b); // false
console.log(a==b); // false

10. Si le tableau est une instance de l’objet, comment différencierez-vous un objet ou un tableau ? Comment un programme pour faire la différence entre eux ?

console.log(diff([]))   // Array
console.log(diff({})) // Object
console.log(diff(null)) // Null or Undefined
function diff(obj) {
if(Object.prototype.toString.call(obj) === '[object Array]') {
return 'Array'
} else if(typeof obj === 'object' && obj !== null) {
return 'Object'
} else {
return 'Null or Undefined'
}
}

Leave a Comment