首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

43道JavaScript面试题

译者注:==会引发隐式类型转换,右侧对象类型会自动拆箱为Number类型。 然而,当我们使用===操作符时,类型值都需要相等,new Number()不是一个数字,是一个对象类型。...静态方法仅在创建它们构造函数中存在,并且不能传递给任何级。 由于freddie是一个级对象,函数不会传递,所以在freddie实例上不存在freddie方法:抛出TypeError。...您自己编写代码并不是实际函数。 该函数是具有属性对象,此属性是可调用。 ---- 11. 下面代码输出是什么?...在让数字类型(1)字符串类型('2')相加时,该数字被视为字符串。 我们可以连接像“Hello”+“World”这样字符串,所以这里发生是“1”+“2”返回“12”。 ---- 15....译者注: 当使用基本类型字符串调用giveLydiaPizza时,实际上发生了下面的过程: 创建一个String包装类型实例 在实例上调用substring方法 销毁实例 ---- 29.

1.8K20

送你43道JavaScript面试题

译者注:==会引发隐式类型转换,右侧对象类型会自动拆箱为Number类型。 然而,当我们使用===操作符时,类型值都需要相等,new Number()不是一个数字,是一个对象类型。...静态方法仅在创建它们构造函数中存在,并且不能传递给任何级。由于freddie是一个级对象,函数不会传递,所以在freddie实例上不存在freddie方法:抛出TypeError。...您自己编写代码并不是实际函数。该函数是具有属性对象,此属性是可调用。 ---- 11. 下面代码输出是什么?...在让数字类型(1)字符串类型('2')相加时,该数字被视为字符串。我们可以连接像“Hello”+“World”这样字符串,所以这里发生是“1”+“2”返回“12”。 ---- 15....译者注: 当使用基本类型字符串调用giveLydiaPizza时,实际上发生了下面的过程: 创建一个String包装类型实例 在实例上调用substring方法 销毁实例 ---- 29.

1.4K10
您找到你想要的搜索结果了吗?
是的
没有找到

送你43道JavaScript面试题

译者注:==会引发隐式类型转换,右侧对象类型会自动拆箱为Number类型。 然而,当我们使用===操作符时,类型值都需要相等,new Number()不是一个数字,是一个对象类型。...静态方法仅在创建它们构造函数中存在,并且不能传递给任何级。 由于freddie是一个级对象,函数不会传递,所以在freddie实例上不存在freddie方法:抛出TypeError。...您自己编写代码并不是实际函数。 该函数是具有属性对象,此属性是可调用。 ---- 11. 下面代码输出是什么?...答案: B 关闭选项卡后,将删除存储在sessionStorage中数据。 如果使用localStorage,数据将永远存在,除非例如调用localStorage.clear()。...译者注: 当使用基本类型字符串调用giveLydiaPizza时,实际上发生了下面的过程: 创建一个String包装类型实例 在实例上调用substring方法 销毁实例 ---- 29.

1.5K20

送你43道JavaScript面试题

译者注:==会引发隐式类型转换,右侧对象类型会自动拆箱为Number类型。 然而,当我们使用===操作符时,类型值都需要相等,new Number()不是一个数字,是一个对象类型。...静态方法仅在创建它们构造函数中存在,并且不能传递给任何级。 由于freddie是一个级对象,函数不会传递,所以在freddie实例上不存在freddie方法:抛出TypeError。...您自己编写代码并不是实际函数。 该函数是具有属性对象,此属性是可调用。 ---- 11. 下面代码输出是什么?...答案: B 关闭选项卡后,将删除存储在sessionStorage中数据。 如果使用localStorage,数据将永远存在,除非例如调用localStorage.clear()。...译者注: 当使用基本类型字符串调用giveLydiaPizza时,实际上发生了下面的过程: 创建一个String包装类型实例 在实例上调用substring方法 销毁实例 ---- 29.

1.6K30

《Effective Java》——读后总结

每个重要接口都提供一个抽象骨架实现类,把接口抽象类优点结合(接口不能包含具体方法,抽象类使用继承来增加功能)。...不要导出俩个具有相同参数数目的重载方法,如果参数数目相同,则至少有一个对应参数在俩个重载方法中具有根本不同类型,否则就应该保证,当传递同样参数时,所有的重载方法行为必须一致。...18、返回零长度数组或集合,而不是 null 对于返回 null不是零长度数组或集合方法,几乎每次用到该方法时都需要进行 null判断,这样很曲折同时很容易出错。...19、基本类型优于装箱基本类型 基本类型只有值,而装箱基本类型可以具有相同不同同一性。装箱基本类型运用 == 操作符几乎总是错误。...多个线程共享可变数据时,每个读或者写数据线程都必须执行同步,否则可能导致活性失败安全性失败。 活性失败:线程A某变量值修改,可能没有立即在线程B体现出来。

1.4K10

JS最新基本数据类型:BigInt

BigInt目前是第3阶段提案, 一旦添加到规范中,它就是JS 第二个数字数据类型,也将是 JS 第8种基本数据类型: Boolean Null Undefined Number BigInt String...问题 对于学过其他语言程序员来说,JS中缺少显式整数类型常常令人困惑。许多编程语言支持多种数字类型,如浮点型、双精度型、整数型双精度型,但JS却不是这样。...还不能将BigInt传递给Web api内置 JS 函数,这些函数需要一个 Number 类型数字。...1n 无法转换数据类型值会引发异常: BigInt(10.2); // → RangeError BigInt(null); // → TypeError BigInt("abc"...总结 BigInt是一种新数据类型,用于当整数值大于Number数据类型支持范围时。这种数据类型允许我们安全地大整数执行算术操作,表示高分辨率时间戳,使用大整数id,等等,而不需要使用库。

2.6K30

2022秋招前端面试题(九)(附答案)

,即在捕获阶段又在冒泡阶段调用事件处理程序时:事件按DOM事件流顺序执行事件处理程序:父级捕获级捕获级冒泡父级冒泡且当事件处于目标阶段时,事件调用顺序决定于绑定事件书写顺序,按上面的例子为,先调用冒泡阶段事件处理程序...,再调用捕获阶段事件处理程序。...,增加了事件类型,比如 UI 事件,焦点事件,鼠标事件JS 隐式转换,显示转换一般非基础类型进行转换时会先调用 valueOf,如果 valueOf 无法返回基本类型值,就会调用 toString字符串和数字...对于基本类型数据(数值、字符串、布尔值),其值就保存在变量指向那个内存地址,因此等同于常量。...但对于引用类型数据(主要是对象和数组)来说,变量指向数据内存地址,保存只是一个指针,const只能保证这个指针是固定不变,至于它指向数据结构是不是可变,就完全不能控制了。

2.6K30

前端报错 TypeError: a.slice is not a function 原因与解决方案

该错误通常表示在一个不支持 slice 方法数据类型上尝试调用了 slice 方法,导致了错误发生。本文将带您深入了解这个问题原因,并提供多种解决方案。...数据类型错误TypeError: a.slice is not a function 常常出现在我们期望 a 是一个数组或字符串情况下,却得到了其他数据类型值。...JavaScript 中基本数据类型限制在 JavaScript 中,除了数组字符串,其他基本数据类型是没有 slice 方法。例如,数字类型、布尔类型对象类型都没有定义 slice 方法。...容错处理当我们无法确保变量 a 数据类型符合预期,或者无法避免在不支持 slice 方法数据类型调用 slice 方法时,我们可以进行容错处理,避免程序崩溃并提供更好用户体验。...我们通过探讨错误产生原因,以及提供解决方案,帮助开发者了解该错误背后逻辑,并能够正确处理避免此类错误。在使用 slice 方法之前,务必要确保变量数据类型符合预期,并进行必要容错处理。

1.6K10

JavaScript 权威指南第七版(GPT 重译)(五)

c2 将不会被调用,并且 TypeError传递给 c3,它具有明确检查处理这种类型错误代码。 关于这段代码有几点值得注意。...因此,数据属性属性描述符对象具有名为value、writable、enumerableconfigurable属性。访问器属性描述符具有getset属性,而不是valuewritable。...除了使对象不可扩展其属性不可配置外,它还使对象所有自有数据属性变为只读。(如果对象具有具有 setter 方法访问器属性,则这些属性不受影响,仍然可以通过属性赋值来调用。)...例如,如果你必须将一个函数传递给一个你无法控制库,你可以传递一个可撤销代理,然后在完成与库交互后撤销代理。这可以防止库保留函数引用,并在意想不到时候调用它。...标签函数还提供原始、未转义字符串文字访问,其中反斜杠没有特殊含义。 代理类相关 Reflect API 允许 JavaScript 对象基本行为进行低级控制。

10810

JavaScript 权威指南第七版(GPT 重译)(七)

EventEmitters 可以发出多种类型事件,事件类型通过名称标识。要注册事件处理程序,请调用 on() 方法,传递事件类型名称以及当事件发生时应该调用函数。...在使用基于线程并发性编程环境中,流式 API 通常具有阻塞调用:读取数据调用数据到达流之前不会返回,写入数据调用会阻塞,直到流内部缓冲区有足够空间来容纳新数据。...当您将字符串作为write()唯一参数传递时,可写流具有默认编码。默认编码通常为“utf8”,但您可以通过在可写流上调用setDefaultEncoding()来显式设置它。...相反,你需要通过显式调用其read()方法来从流中拉取数据。这不是一个阻塞调用,如果流上没有可读数据,它将返回null。由于没有同步 API 来等待数据,暂停模式 API 也是基于事件。...打包工具通常具有基于插件架构,并支持插件,允许导入捆绑实际上不是 JavaScript 代码文件“模块”。假设你程序包含一个大型 JSON 兼容数据结构。

22910

JavaScript 权威指南第七版(GPT 重译)(二)

标记为 Types 列列出了操作数预期类型(在→符号之后)运算符结果类型。表后面的章节解释了优先级,结合性操作数类型概念。这些运算符本身在讨论之后分别进行了文档化。 表 4-1....加法运算符有自己节,因为它还可以执行字符串连接,并且具有一些不寻常类型转换规则。一元运算符位运算符也有自己节。...这些比较运算符操作数可以是任何类型。但是,比较只能在数字字符串上执行,因此不是数字或字符串操作数将被转换。...如果传递不是字符串,则它只是返回该值。如果传递一个字符串,则它尝试将字符串解析为 JavaScript 代码,如果失败则抛出 SyntaxError。...(在非严格模式下,nullundefined值将替换为全局对象,非对象值将转换为对象。) 在严格模式下,不可写属性赋值尝试在不可扩展对象上创建新属性会抛出 TypeError

24010

解析赋值、浅拷贝深拷贝

b 有各自基本类型属性,所以对这种属性修改是独立;但是由于 a b 引用类型属性指向内存中同一个对象,所以 a 该对象修改会反映到 b 上,这是浅拷贝特点。...5、不能正确处理 new Date() 6、不能处理正则 3.4 总结 -- 数据是否指向同一象 第一层数据为基本数据类型数据中包含对象 赋值 是 改变会使原数据一同改变 改变会使原数据一同改变...1.如果作为源对象参数不是对象: null undefined 会被忽略;除了这两者之外原始类型则将被包装成对象,在这种情况下,只有自身拥有可枚举属性包装对象才会被拷贝,其它类型包装对象会被忽略...一方面,我们需要考虑到源对象可能重写了这个方法而导致其无法正常调用,另一方面还要考虑到源对象可能是基于 Object.create(null) 创建,而这种方法创建对象由于不具有与 Object 原型链联系...,因此不具有 hasOwnProperty() 方法,在调用时候会报错。

56820

【JS进阶】你真的掌握变量类型了吗

一、JavaScript数据类型 ECMAScript标准规定了7种数据类型,其把这7种数据类型又分为两种:原始类型对象类型。...1); str.toLowerCase(1); str[0] = 1; console.log(str); // ConardLi 在上面的代码中我们str调用了几个方法,无一例外,这些方法都在原字符串基础上产生了一个新字符串...2.2 引用类型 堆内存: 存储值大小不定,可动态调整 空间较大,运行效率低 无法直接操作其内部存储,使用引用地址读取 通过代码进行分配空间 相对于上面具有不可变性原始类型,我习惯把对象称为引用类型...所以,再次记住: ECMAScript中所有的函数参数都是按值传递。 三、分不清nullundefined ?...// true 另外,使用instanceof也不能检测基本数据类型,所以instanceof并不是一个很好选择。

3.2K30

python set 排序_如何在Python中使用sorted()sort()

编号进行排序   1.2   字符串进行排序   二   Python排序中遇到限制陷阱   2.1   无法具有不可比数据类型列表用sorted函数排序   2.2   当你在对字符串进行排序时...1.2   字符串进行排序           str类型排序类似于其他迭代, 如列表元组。...然后该列表进行排序组合, 使得再次形成字符串不是列表。  ...2.1   无法具有不可比数据类型列表用sorted函数排序          有些数据类型因为它们差异大只能使用sorted()进行相互比较。...在输出就地修改时,两者都具有非常不同特性,因此请确保您考虑将使用.sort()任何应用程序功能或程序,因为.sort()可以不可撤销地覆盖数据

4K40

python异常报错详解

不是直接由用户定义类继承(为此使用Exception)。如果 str()或者unicode()是在这个类一个实例上被调用,返回实例参数表示形式,或者当没有参数时,返回空字符串。...如果关联值为纯整数,则指定系统退出状态(传递给Cexit()函数); 如果是None,退出状态为零; 如果有其他类型(如字符串),则打印对象值,退出状态为一。..._exit()如果绝对有必要立即退出(例如,在调用进程os.fork())中,则可以使用该函数。...异常TypeError 当操作或功能应用于不适当类型对象时提起。关联值是一个字符串提供有关类型不匹配详细信息。...python提供了两个非常重要功能来处理python程序在运行中出现异常错误,异常处理断言(Assertions)。

4.6K20

一文看懂 PHP 8 新特性

只要该缓存具有这些实体对象引用,就不能对其进行垃圾回收,即使该缓存是唯一引用它们对象也是如此。 如果该缓存层使用了弱引用映射,则 PHP 将在没有其他引用时这些对象进行垃圾回收。...如果要捕获所有的异常错误,可以使用Throwable作为捕获类型。 参数列表中尾部逗号 现在 PHP,虽然可以调用函数时在尾部加逗号,但参数列表中仍然缺少尾部逗号支持。...get_debug_type()为数组、字符串、匿名类对象返回更有用输出。 例如,在类\Foo\Bar上调用gettype()将返回object。...:Error异常取代了警告 只能解包数组Traversables:TypeError异常取代了警告 为 foreach() 提供了无效参数:TypeError异常取代了警告 偏移量类型非法:TypeError...提供资源不是有效流资源:TypeError异常取代了警告 @运算符不再让致命错误静默 此更改可能会揭示出 PHP 8 之前隐藏错误。

2.5K10

JavaScript 进阶问题列表

在本例中,JavaScript 将数字 1 转换为字符串,以便函数有意义并返回一个值。在数字类型(1)字符串类型('2')相加时,该数字被视为字符串。...JavaScript 检查对象是否具有对内存中相同位置引用。 题目中我们正在比较两个对象不是同一个引用:作为参数传递对象引用内存位置,与用于判断相等对象所引用内存位置并不同。...所以说,birthYear是值传递,因为他是个字符串不是对象。当我们参数进行值传递时,会创建一份该值 复制 。...使用typeof操作符时, 操作值 x没有被定义:因为我们在x声明块外部,无法调用它。这就意味着x未定义。...当我们尝试调用一个不存在函数时TypeError异常会被抛出。

1.3K10

Java面试系列9

EnumConstantNotPresentException 当应用程序试图通过名称枚举类型访问那些不包含具有指定名称常量枚举常量时,抛出该异常。...IllegalArgumentException 此异常表明向方法传递了一个不合法或不正确参数 IllegalCharsetNameException 将一个不是合法 charset 名称字符串用作...InvalidOpenTypeException 当开放数据开放类型 不是期望类型时,抛出此运行时异常。...NullPointerException 空指针引用异常 当应用程序试图在需要对象地方使用 null 时,抛出该异常。这种情况包括: 调用 null 对象实例方法。...TypeNotPresentException 当应用程序试图使用表示类型名称字符串类型进行访问,但无法找到带有指定名称类型定义时,抛出该异常 TypeConstraintException 此异常指示已检测到存在违反动态检查类型约束情况

2K40

7种你应该知道JavaScript常见错误

接下来,生成token流将传递到解析阶段,由解析器处理。这是从token生成AST地方。AST是我们代码结构抽象数据结构。...TypeError TypeError 是指对象用来表示值类型非预期类型时发生错误。例如,我们期望它是布尔值,但结果发现它是string类型。...TypeError: num.toUpperCase is not a function 因为toUpperCase函数需要字符串数据类型。...如果我们在Objects,Boolean,Symbol,null,undefined数据类型调用toUpperCase函数,则只有字符串会转换为大写或小写形式,我们将得到TypeError,因为它操作数据类型错误...JS中URI(统一资源指示符)具有以下功能:decodeURI,decodeURIComponent等。 如果我们用错误参数调用其中任何一个,我们将得到一个URIError。

2.5K10
领券