天天看点

这些前端大厂面试题你会做吗?每日10题大厂面试题(八)题1(模版字符串)题2(引用复制)题3(Delete)题4(yield)题8(扩展运算符)题10(箭头函数)

文章目录

  • 题1(模版字符串)
  • 题2(引用复制)
  • 题3(Delete)
  • 题4(yield)
  • 题8(扩展运算符)
  • 题10(箭头函数)

题1(模版字符串)

下面代码输出的是

function getPersonInfo(one, two, three) {
	console.log(one);
	console.log(two);
	console.log(three);
}
const person = 'Lydia';
const age = 21;
getPersonInfo`${person} is ${age} years old`
           

答案:["", “is”, “years old”] Lydia 21

这道题主要考察:

  • 模版字符串:如果使用标记的模版字符串,则第一个参数的值始终是字符串值的数组。其余参数获取传递到模版字符串中的表达式的值!

题2(引用复制)

下面代码输出的是

let person = {name: 'Lydia'}
const members = [person]
person = null

console.log(member)
           

答案:[null]

这道题主要考察:

  • 引用复制:当设置两个对象彼此相等时,它们会通过引用进行交互。但是当你将引用从一个变量分配至另一个变量时,其实只是执行了一个复制操作

题3(Delete)

下面代码输出的是

Dog.prototype.bark = function () {
	console.log('Woof I am ${this.name}`);
};

const pet = new Dog('Mara');
pet.bark();
delete Dog.prototype.bark;
pet.bark();
           

答案:“Woof I am Mara", TypeError

这道题主要考察:

  • Delete: delete关键字删除对象的属性,对原型也是适用的。删除了原型的属性后,该属性在原型链上就不可用了,当我们尝试调用一个不存在的函数时TypeError异常会被抛出。

题4(yield)

如何能打印出console.log语句后注释掉的值

function* startGame() {
	const answer = yield 'Do you love Javscript';
	if (answer !== 'Yes') {
		return 'oh wow... Guess we are gone here'
	}
	return 'Javascript loves you back';
}
const game = startGame();
console.log(); // Do you love Javascript
console.log(); // Javascript loves you back
           

答案:game.next().value and game.next(‘Yes’).value

这道题主要考察:

  • yield: next方法可以带一个参数,该参数会被当作上一个yield表达式的返回值。

题8(扩展运算符)

下面输出的是

答案:[‘l’, ‘y’, ‘d’, ‘i’, ‘a’]

这道题主要考察:

  • 扩展运算符:字符串是可迭代的。扩展运算符将迭代的每个字符映射到一个元素

题10(箭头函数)

下面输出的是

const shape = {
	radius: 10, 
	diameter() {
		return this.radius * 2;
	}, 
	perimeter: () => 2 * Math.PI * this.radius
};
shape.diameter():
shape.perimeter();
           

答案:20 and NaN

这道题主要考察:

  • 箭头函数:对于箭头函数,this关键字指向是它所在上下文的环境,与普通函数不同,这意味着当我们调用perimeter时,它不是指向shape对象,而是指其定义时的环境

       小伙伴们今天的学习就到这里了,如果觉得本文对你有帮助的话,欢迎转发,评论,收藏,点赞!!!

       每天学习进步一点点,就是领先的开始。如果想继续提高,欢迎关注我,或者关注公众号”祯民讲前端“。大量前端技术文章,面试资料,技巧等助你更进一步!

这些前端大厂面试题你会做吗?每日10题大厂面试题(八)题1(模版字符串)题2(引用复制)题3(Delete)题4(yield)题8(扩展运算符)题10(箭头函数)