Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >选择篇(103)-下面代码的输出是什么?

选择篇(103)-下面代码的输出是什么?

作者头像
齐丶先丶森
发布于 2022-12-05 05:55:25
发布于 2022-12-05 05:55:25
20000
代码可运行
举报
文章被收录于专栏:前端面试秘籍前端面试秘籍
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Person {
  constructor() {
    this.name = "Lydia"
  }
}

Person = class AnotherPerson {
  constructor() {
    this.name = "Sarah"
  }
}

const member = new Person()
console.log(member.name)

  • A: "Lydia"
  • B: "Sarah"
  • C: Error: cannot redeclare Person
  • D: SyntaxError
答案: B

我们可以将类设置为等于其他类/函数构造函数。在这种情况下,我们将Person设置为AnotherPerson。这个构造函数的名字是Sarah,所以新的Person实例member上的name属性是Sarah

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端面试秘籍 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
选择篇(098)-下面代码的输出是什么?
通过new来调用构造函数,将会生成构造函数Person的实例,对实例执行typeof关键字将返回"object",上述情况打印出"object"。
齐丶先丶森
2022/12/05
1360
详解ES6中的class
class是一个语法糖,其底层还是通过 构造函数 去创建的。所以它的绝大部分功能,ES5 都可以做到。新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。
木子星兮
2020/07/16
5330
选择篇(059)-下面代码的输出是什么?
普通参数都是 值 传递的,而对象则不同,是 引用 传递。所以说,birthYear是值传递,因为他是个字符串而不是对象。当我们对参数进行值传递时,会创建一份该值的 复制 。
齐丶先丶森
2022/05/12
2300
选择篇(021)-下面代码的输出是什么?
您不能像使用常规对象那样向构造函数添加属性。如果要一次向所有对象添加功能,则必须使用原型。所以在这种情况下应该这样写:
齐丶先丶森
2022/05/12
2760
选择篇(022)-下面代码的输出是什么?
对于sarah,我们没有使用new关键字。使用new时,它指的是我们创建的新空对象。但是,如果你不添加new它指的是全局对象!
齐丶先丶森
2022/05/12
2820
【JS】411- JS 进阶系列问题(47问)
在函数内部,我们首先通过 var 关键字声明了 name 变量。这意味着变量被提升了(内存空间在创建阶段就被设置好了),直到程序运行到定义变量位置之前默认值都是 undefined。因为当我们打印 name 变量时还没有执行到定义变量的位置,因此变量的值保持为 undefined。
pingan8787
2019/11/15
2.5K0
选择篇(112)-下面代码的输出是什么?
对象通过引用传递。当我们检查对象的严格相等性(===)时,我们正在比较它们的引用。
齐丶先丶森
2022/12/05
1710
选择篇(041)-下面代码的输出是什么?
使用两者,我们可以传递我们想要this关键字引用的对象。但是,.call方法会立即执行!
齐丶先丶森
2022/05/12
1560
送你58道JavaScript面试题(上)
之前翻译过前阵子 github很火的 javascript-questions:送你43道JavaScript面试题
ConardLi
2019/08/21
8190
送你58道JavaScript面试题(上)
选择篇(091)-下面代码的输出是什么?
我们将变量city设置为等于person对象上名为city的属性的值。这个对象上没有名为city的属性,因此变量city的值为undefined。
齐丶先丶森
2022/12/05
2420
选择篇(054)-下面代码的输出是什么?
然后我们又声明了一个变量members. 将首个元素赋值为变量person。当设置两个对象彼此相等时,它们会通过 引用 进行交互。但是当你将引用从一个变量分配至另一个变量时,其实只是执行了一个 复制 操作。(注意一点,他们的引用 并不相同!)
齐丶先丶森
2022/05/12
2740
送你43道JavaScript面试题
这两天的GitHub Trending repositories被一个名叫 javascript-questions的项目霸榜了,项目中记录了一些JavaScript题目。
ConardLi
2019/06/19
1.7K0
送你43道JavaScript面试题
选择篇(100)-下面代码的输出是什么?
Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,上述情况返回一个二维数组,数组每个元素是一个包含键和值的数组:
齐丶先丶森
2022/12/05
2410
ES6—class类详细教程(下)
上一期出了ES6中Class类用法详解的(上)半部分,以下是(下)半部分,需要复习上半部分的小伙伴可以点击文章末尾的“阅读原文”或者点击文中的超链接。
用户9999906
2022/09/26
7880
选择篇(069)-下面代码的输出是什么?
通过defineProperty方法,我们可以给对象添加一个新属性,或者修改已经存在的属性。而我们使用defineProperty方法给对象添加了一个属性之后,属性默认为 不可枚举(not enumerable). Object.keys方法仅返回对象中 可枚举(enumerable) 的属性,因此只剩下了"name".
齐丶先丶森
2022/05/12
1780
小结ES6基本知识点(三):类与继承
ES6初学者,通过阅读本文可对ES6知识点有个大体的概念,强烈建议阅读阮一峰大大的ES6入门。
前端林子
2019/03/09
2.3K1
小结ES6基本知识点(三):类与继承
深入理解javascript对象
对象被定义为一组属性的无序集合,对象就是一组没有特定顺序的值。对象的每个value值都由一个key来标识,一个key映射一个value值。
javascript艺术
2022/11/22
4100
JavaScript 进阶问题列表[每日前端夜话0x95]
来源:https://github.com/lydiahallie/javascript-questions
疯狂的技术宅
2019/07/17
1.5K0
JavaScript 进阶问题列表[每日前端夜话0x95]
选择篇(007)-下面代码的输出是什么
参考答案: D 解析: 每个函数都有其自己的执行上下文。getName 函数首先在其自身的上下文(范围)内查找,以查看其是否包含我们尝试访问的变量 name。上述情况,getName函数包含其自己的 name 变量: 我们用 let 关键字和 Sarah 的值声明变量 name。 带有 let 关键字(和 const)的变量被提升,但是与 var 不同,它不会被初始化。在我们声明(初始化) 它们之前,无法访问它们。这称为“暂时性死区”。当我们尝试在声明变量之前访问变量时,JavaScript 会抛出 ReferenceError: Cannot access 'name' before initialization。 如果我们不在 getName 函数中声明 name 变量,则 javascript 引擎会查看原型链。会找到其外部作用域有一个名为 name 的变量,其值为 Lydia。在这种情况下,它将打印 Lydia :
齐丶先丶森
2022/05/12
2430
ECMAScript中类与继承详解(Java对比学习)
如果声明一个一个类的时候没有声明构造函数,那么会默认添加一个空的构造函数,构造函数在new实例化一个对象的时候会被调用
coder_koala
2019/07/30
4600
推荐阅读
相关推荐
选择篇(098)-下面代码的输出是什么?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验