js中关于new Object时传参的一些细节分析

JS中通过new Object()方式创建对象时,可以传入一个参数来初始化对象属性。本文将介绍new Object()时传入参数的一些细节。

1. new Object()传入一个空对象

new Object()传入一个空对象时,返回的对象与直接使用对象字面量创建对象的效果一样。

const obj1 = new Object({});
const obj2 = {};

console.log(obj1); // {}
console.log(obj2); // {}
console.log(obj1 === obj2); // false
console.log(obj1 == obj2); // false

2. new Object()传入非空对象

new Object()传入一个非空对象时,返回的对象将继承这个对象的所有属性和方法。

const obj1 = { a: 1, b: 2 };
const obj2 = new Object(obj1);

console.log(obj2); // { a: 1, b: 2 }
console.log(obj1 === obj2); // false
console.log(obj1 == obj2); // false

如果非空对象包含一个数字、字符串等基本类型,并且不是封装类型对象,则返回的对象与传入的参数不同。

const num = new Number(123);

const obj1 = new Object(num);
console.log(obj1); // { [[PrimitiveValue]]: 123 }

const obj2 = new Object("hello");
console.log(obj2); // { '0': 'h', '1': 'e', '2': 'l', '3': 'l', '4': 'o' }

在这些情况下,返回的对象将成为一个只有一个属性的对象。

3. 小结

通过实际的代码示例,我们介绍了new Object()时传入参数的一些细节。除了基础知识之外,理解这些细节可以提高我们的JavaScript编程技能。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js中关于new Object时传参的一些细节分析 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • 15个值得收藏的JavaScript函数

    15个值得收藏的JavaScript函数 介绍 在网页应用程序中,JavaScript是常用的编程语言之一。它有许多有用的函数,可以提高程序的效率和交互性。在这篇文章中,我们将介绍“15个值得收藏的JavaScript函数”,这些函数涵盖了从日期和时间到字符串和数学的各个方面。希望这篇文章能够帮助您提高JavaScript编程能力。 日期和时间 1. get…

    JavaScript 2023年5月18日
    00
  • Three.Js实现看房自由小项目

    Three.js实现看房自由小项目攻略 介绍 Three.js是一个基于WebGL的JavaScript 3D库,它可以帮助我们在Web端实现非常炫酷的3D视觉效果,完美地展现产品的三维模型,同时支持丰富的材质、灯光、粒子等效果,可以方便地实现交互效果。 在这篇攻略中,我们将使用Three.js来实现一个看房自由小项目。这个小项目将会模拟一个虚拟房屋,让用户…

    JavaScript 2023年6月11日
    00
  • 返回函数的JavaScript函数

    返回函数的JavaScript函数指函数内部定义了一个或多个函数,并将其中一个函数作为返回值。这种方式可以使我们在维护函数时更加容易,同时也可以实现更加灵活的编程。 下面,我们将分别从函数内部定义函数和返回函数两个方面对这种方式进行详细讲解。 函数内部定义函数 在JavaScript中,我们可以在一个函数内部定义另一个函数。例如,如下代码中的outerFun…

    JavaScript 2023年5月28日
    00
  • JavaScript Object的extend是一个常用的功能

    JavaScript中的extend功能常用于对象的继承、对象属性的扩展等场景。本篇攻略将详细讲解如何使用JavaScript Object的extend功能。 什么是JavaScript对象的extend JavaScript中的Object对象是所有对象的父对象,每个对象都有Object的属性和方法。其中extend方法就是Object对象中常用的一个方…

    JavaScript 2023年5月27日
    00
  • js调用AJAX时Get和post的乱码解决方法

    这里是 “js调用AJAX时Get和post的乱码解决方法”的完整攻略,我们将分为以下几个步骤: 确认乱码问题 解决Get请求的乱码问题 解决Post请求的乱码问题 接下来详细讲解: 1. 确认乱码问题 首先在实际开发时遇到乱码问题时,需要确认到底是AJAX请求出现了乱码,还是服务器返回了乱码,这是解决问题的第一步。 可以通过Chrome浏览器的开发者工具,…

    JavaScript 2023年5月19日
    00
  • js根据后缀判断文件文件类型的代码

    让我们来详细讲解一下“js根据后缀判断文件类型的代码”的完整攻略。 前置知识 在开始之前,我们需要了解一些前置知识: 如何通过 JavaScript 获取文件的后缀名。 如何根据后缀名判断文件类型。 获取文件后缀名 要获取文件的后缀名,我们可以使用 JavaScript 的 split() 方法。例如,对于一个文件名为 example.jpg 的文件,可以使…

    JavaScript 2023年5月27日
    00
  • 原生JavaScript实现Tooltip浮动提示框特效

    下面是“原生JavaScript实现Tooltip浮动提示框特效”的完整攻略。 什么是Tooltip浮动提示框特效 Tooltip浮动提示框特效是一种鼠标移入到某个元素上时,显示一个类似于气泡的提示框,提示框中包含了与该元素有关的相关信息,一般应用于网页中。 实现步骤 HTML结构 首先,需要在HTML中编写一个触发提示框的元素,例如一个标签。 <sp…

    JavaScript 2023年6月11日
    00
  • javascript的正则匹配方法学习

    JavaScript的正则匹配方法学习 正则表达式是一种用于匹配字符串的模式,它在JavaScript中非常常见。在本文中,我们将介绍怎样在JavaScript中使用正则表达式进行字符串匹配。 1. 创建正则表达式 在JavaScript中,可以使用正则表达式字面量或RegExp对象来创建正则表达式。正则表达式字面量可以使用斜杠”/”包围,其中间为正则表达式…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部