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

为什么Array.from返回[object HTMLParagraphElement]而不是段落中的内容?

Array.from方法是将类似数组或可迭代对象转换为真正的数组。它接受一个类似数组的对象或可迭代对象作为参数,并返回一个新的数组实例。

在这个特定的问题中,Array.from方法返回了"[object HTMLParagraphElement]"而不是段落中的内容,是因为参数传递的对象是一个HTML段落元素,而不是包含在段落中的文本内容。

HTML段落元素是表示段落的标签,它是HTML文档中的一部分,而不是文本本身。因此,当我们使用Array.from方法将段落元素传递给它时,它会将该元素视为一个对象,并返回该对象的字符串表示形式,即"[object HTMLParagraphElement]"。

如果我们想要获取段落中的文本内容,而不是元素本身,我们可以使用其他方法来实现。例如,可以使用textContent属性来获取元素的文本内容。以下是一个示例:

代码语言:txt
复制
const paragraph = document.querySelector('p'); // 获取第一个段落元素
const text = paragraph.textContent; // 获取段落元素中的文本内容
console.log(text); // 输出段落中的文本内容

在这个例子中,我们使用了document.querySelector方法来获取第一个段落元素,并使用textContent属性来获取该元素中的文本内容。最后,我们将文本内容打印到控制台上。

需要注意的是,Array.from方法并不是用于获取HTML元素的文本内容,而是用于将类似数组的对象或可迭代对象转换为真正的数组。如果我们想要获取HTML元素的文本内容,应该使用适当的属性或方法来实现。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

为什么 useState 返回是 array 不是 object

[count, setCount] = useState(0) 这里可以看到 useState 返回是一个数组,那么为什么返回数组不是返回对象呢?...为什么返回数组不是返回对象 要弄懂这个问题要先明白 ES6 解构赋值,来看 2 个简单例子: 数组解构赋值 const foo = [1, 2, 3]; const [one, two, three...,这个问题就很好解释了 如果 useState 返回是数组,那么使用者可以对数组元素命名,代码看起来也比较干净 如果 useState 返回是对象,在解构对象时候必须要和 useState 内部实现返回对象同名...总结 useState 返回是 array 不是 object 原因就是为了降低使用复杂度,返回数组的话可以直接根据顺序解构,返回对象的话要想使用多次就得定义别名了 首发自:为什么 useState...返回是 array 不是 object

2.2K20

是否还在疑惑Vue.js组件data为什么是函数类型不是对象类型

function Vue() { this.data= { name: '张三', age: '21' } } //创建了一个Vue实例返回给...} 组件data使用函数情况 其实当我们把组件注册到别的页面上时,也会创建一个Vue实例,就像这个样子 function Vue() { //此处data值为一个函数,调用时会return返回一个对象...let vm1 =new Vue() //此时vm1应该是这样 vm1 = { //这里data,是先获取了函数Vuedata(data值为函数),然后得到了data返回值 this.data...= new Vue() //此时vm2是这样 vm2 = { //这里data,是先获取了函数Vuedata(data值为函数),然后得到了data返回值 data: { name...这是因为这两个实例对象在创建时,是先获得了一个函数,将该函数返回值作为了自己属性data值,并且这两个实例对象data值在栈对应地址也不一样,所以他们不会互相影响。

3.4K30

框架篇-Vue面试题1-为什么 vue 组件 data 是函数不是对象

在vue组件data属性值是函数,如下所示 export default { data() { // data是一个函数,data: function() {}简写 return...// data是一个对象 name: 'itclanCoder', }, }; 当一个组件被定义,data必须声明为返回一个初始数据对象函数,因为组件可能被用来创建多个实例 也就是说,在很多页面...,定义组件可以复用在多个页面 如果data是一个纯碎对象,则所有的实例将共享引用同一份data数据对象,无论在哪个组件实例修改data,都会影响到所有的组件实例 如果data是函数,每次创建一个新实例后...,调用data函数,从而返回初始数据一个全新副本数据对象 这样每复用一次组件,会返回一份新data数据,类似于给每个组件实例创建一个私有的数据空间,让各个组件实例各自独立,互不影响,保持低耦合 可以看下面一段代码...(p1,p2)都指向是同一份实体 原型下属性相当于是公有的 修改一个实例对象下属性,也会造成另一个实例属性跟着改变,这样在组件复用时候,肯定是不行,那么改成函数就可以了,如下代码所示 function

1.9K20

初识字节流+实现缓冲字节流OutputStream主要方法构造方法读关流实现BufferedInputStream实现BufferedOutputStream为什么read()返回是Int型不是

javaIO流可以分为两种:字符流和字节流 字符流,顾名思义,就是对字符进行操作,只能操作文本文件 字节流,就是对字节进行操作,然而所有文件都是由字节组成,可以字节流可以操作一切文件...字符流两个大类:Reader和Writer 详情可见 https://cloud.tencent.com/developer/article/1036410 简单Writer和Reader...-1 这里有个特别好用方法,可以用来知道文件大小 available():int; 返回文件字节数 这时就可以用这个方法来定义array大小,那么就可以一次性读完了 关流 flush...,从数组中一个个读到控制台 输出缓冲就是把数据存到数组,再一起写到OutputStream缓冲区,最后在刷新 刚刚用这个复制一个11.1MMP3花了0.6秒,和系统时间差不多↖(^ω^)...---- 错误返回了-1 如果扫描到了11111111那么此时将byte->int是-1,如果这样的话,程序就会终止不会进行 为什么read()返回是Int型不是byte型呢??

1.2K80

JavaScript基础2---控制权DOM操作

HTML文档可以说由节点构成集合,三种常见DOM节点: 1.元素节点:上图中,,等都是元素节点,即标签。 2.文本节点:向用户展示内容,如......JavaScript,DOM,CSS等文本 3.属性节点:元素属性,如标签链接属性href="http://www.imooc.com"。...JavaScript DOM 通过ID获取元素   网页由标签将信息组织起来,标签id属性值是唯一,就像是每人有一个身份证号一样...语法: document.getElementById(“id”)  例子: 结果:null或[object HTMLParagraphElement] 注:获取元素是一个对象,如想对元素进行操作,...innerHTML属性    innerHTML属性用于获取或替换HTML元素内容 语法:Object.innerHTML 注意:1.Object是获取元素对象,如通过document.getElementById

74240

你这磨人小妖精——选中文本并标注实现过程

html元素渲染即可 但是现在问题来了,我们这是一个现成react页面,是一个详情页,页面的内容是多个接口返回填进去: 标题1 {接口1返回} 标题2 {接口2返回} 我们如果高亮了接口2返回内容,那就意味着接口2返回内容里面有特殊标记: // before 12334666345 // after...anchorOffset和focusOffset表示是起点index和终点index。在多段落时候,这两个数值只是相对于当前段落,所以会不准确。...一行文字时候的确是没什么问题,因此需要我们自己实现一下这个回溯获取index功能 第index个字符串距离左上角距离 已经获取到index,再获取container下第index个字符串距离左上角距离...因为react下进行原生js操作是很危险,重新渲染,删除元素时候分分钟页面白屏——a不是b子节点。

1.9K30

js对象转数组_声明一个string类型数组

下面就来介绍下这几种方法 1.Array.prototype.slice.call(obj) 这种方法是借用了数组原型slice方法,返回一个数组。...) + ' ' + 'Array.prototype.slice.call(obj)'); 2.2.Array.from() Array.from()是ES6新增方法,可以将两类对象转为真正数组...属性 可以用 for of 循环 所有通过生成器创建迭代器都是可迭代对象 如document.getElementsByTagName(“div”) 返回是可迭代对象但不是一个数组 Array.isArray...扩展运算符(…) 同样是ES6新增内容,扩展运算符(…)也可以将某些数据结构转为数组 3.1 arguments对象转换 function foo() { var...length 值不同,Object.values(obj) 返回对象自身可枚举属性值集 let object4 = { '0': 3, '1': 13, '2': 23, '3': 33

2.5K30

Javscript数组快速填充数据8种方

前言 日常开发过程中经常会遇到模拟数据填充问题。也就是造一些假数据,方便自己调试和开发。由此,整理了常用数据填充方法,在自己学习过程,也分享给更多开发者。一起学习,一起加油,一起精进。...fill() fill() 方法用一个固定值填充一个数组从起始索引到终止索引内全部元素。不包括终止索引。...,并返回它,不会改变原数组长度。...(7) 创建一个具有单个元素 7 数组, Array(7) 创建一个长度为7空数组(注意:这是指一个有7个空位(empty)数组,不是由7个undefined组成数组)。...() Object.keys() 方法会返回一个由一个给定对象自身可枚举属性组成数组,数组属性名排列顺序和正常循环遍历该对象时返回顺序一致 。

75420

【javascript】您好, 您要ECMAScript6速记套餐到了 (一)

Object.keys(obj),返回一个数组, 遍历自身属性, 不包括原型属性, 且要求是可枚举 3....2.Object.getOwnPropertyNames(obj) 和Object.keys(obj), 都是只返回遍历自身属性组成数组,前者无论是否可枚举都返回Object.keys(obj)...IndexOf方法来寻找一个特定元素,但它局限性在于indexof只能以数组元素值作为查找条件,find方法则更加灵活, 它提供了一个以数组元素为参数函数供你做更加灵活操作,并取得第一个返回...箭头函数绑定了this对象, 减少了this绑定丢失所造成麻烦 在javascript, 大多数变量查找都是静态不是动态, 或者说是变量所在作用域是定义时候决定不是运行时决定 但...这时候this指向是window,不是{ id: 42 } (在 ES6严格模式下是undefined) 但箭头函数this是静态绑定, 所以能很好地解决这个问题: function foo()

57870

Android开发人员初识JavaScript

1用法: 2confirm(str); 3 4参数说明: 5str:在消息对话框要显示文本 6返回值: Boolean值 7 8返回值: 9当用户点击"确定"按钮时,返回true 10...1用法: 2prompt(str1, str2); 3prompt(str1); 4 5参数说明: 6str1: 要显示在消息对话框文本,不可修改 7str2:文本框默认内容,可修改...,也可为空 8 9返回值: 10当用户点击确定按钮时,文本框内容将作为函数返回值 11当用户点击取消按钮时,将返回null ?...1document.getElementById(“id”) ; 2 3获取结果为null或者[object HTMLParagraphElement] 注意:这里获取到元素是一个对象,如果想对元素进行操作...2、替换HTML元素内容 通过innerHTML属性就可以获取或替换 HTML 元素内容

1.6K20

关于数据类型前端面试题总结,不要被鄙视哦~

8.如何把类数组变量转换为数组,如函数内部arguments对象,selector返回DOM列表。 问题解答 JavaScript数据类型都有哪些?...如果不确定运行环境的话,可以用Object.prototype.toString.call()方法来确认,如果结果是[object Array]则认为数组。...相同点: 这两个数据类型都只有一个值 都没有方法 都表示“无” 转化为布尔类型时,都是false 不同点: null是一个关键字,undefined不是。...null实质是一个空对象,undefined是window一个属性。...对象转成原始数据类型时,先调用对象valueOf方法,如果返回结果不是原始数据类型值,再调用toString方法。

93870

你应该了解25个JS技巧

下面就是我多年来收集前 25 个捷径和小技巧。 1. 类型检查小工具 JavaScript 不是强类型语言,对此我推荐最佳解决方案是 TypeScript。...在 ArrayforEach 执行“break”和“continue” 我真的很喜欢使用数组“.forEach”方法,但有时我需要提早退出或继续进行下一个循环,不想用 for...loop。...用函数扩展类 我经常对别人讲,JavaScript 类只是构造函数和底层原型,不是像 Java 那样真实概念。一个证据是,你可以只使用一个构造函数来扩展一个类。...循环任何内容 有时,你需要循环任何可迭代内容(Set、Map、Object、Array、String 等)。这个非常简单 forEach 函数工具就可以做到这一点。...创建模块或单例 很多时候,你需要在加载时初始化某些内容,设置它需要各种事物,然后就可以在应用程序到处使用它,而无需再做什么补充工作。你可以使用 IIFE 函数来做到这一点,这个函数太好用了。

48910

不好理清JS基础知识和CSS3选择器小结-第一章

为什么null是基本数据类型,当使用typeof null时候却返回objectobject又属于引用数据类型,为什么基本数据类型null又属于他呢?这不是矛盾吗?...typeof是可以进行数据类型判断,只是我们进行判断是不是和对应类型判断时候需要加上引号进行比较,原因是typeof返回永远是string形式进行!...,不是系统内置对象Function实例,所以a instanceof Function返回false,typeof返回"object"。...而是没有意义,判断出来object不是null,所以一般直接进行===null进行判断一个变量是不是null,Object 是一种对象类型, "object"是一个字符串, 你不定义的话没有意义...p::selection{ /* 用户选中部分背景色为透明 */ background-color: transparent; } /* :not 选择非用户指定内容选择器

29630

ES6一些高级技巧

Object.entries()和Object.fromEntries() Object.entries()方法返回一个给定对象自身可枚举属性键值对数组。...[["a", 1], ["b", 2], ["c", 3]] 在这个例子,我们将一个包含三个属性对象传递给Object.entries()方法,并将返回结果存储在entries变量。...entries变量现在是一个包含键值对数组数组。 同样地,当使用Object.fromEntries()时,可以传入一个键值对数组作为参数。这个数组每个元素都是一个包含键和值数组。...(obj); // { a: 1, b: 2, c: 3 } 在这个例子,我们将一个包含三个键值对数组传递给Object.fromEntries()方法,并将返回结果存储在obj变量。...它与Array构造函数不同之处在于,当参数只有一个且为数字时,Array.of会创建一个只包含该数字数组,不是创建指定长度空数组。

10210

从 JS 里 MD5 转换踩坑开始说起

写 JS 代码同学们不知道有没有注意过,后台接口通过 JSON 处理汉字字符、emoji 时,返回是像 \u00ff 这样转义处理字符,不是它们明文原文。这是为什么呢? <?...好在 ES6 增加了新基于 Unicode 码点处理方式 String.prototype.codePointAt();而对于字长处理则可以使用 Array.from(),它将会正确按照每个字符进行拆分...php echo "\xE8\xB0\xA2\xE8\xB0\xA2"; // -> 谢谢 但是在 JavaScript ,如果你按照这样方式书写,就会发现打印出来不是你预想“谢谢”: console.log...所以,这里最终得到字符串其实是: 0x008C 0x0022,不是 0x8C22。...回顾 最后,我们回到最开始问题:服务器为什么以 \uXXXX 形式返回汉字和emoji?

2.5K50

ES6总结

function foo() {} foo.name // "foo" 箭头函数 箭头函数有几个使用注意点: (1)函数体内this对象,就是定义时所在对象,不是使用时所在对象。...Array.from方法用于将两类对象转为真正数组:类似数组对象(array-like object)和可遍历(iterable)对象(包括 ES6 新增数据结构 Set 和 Map)。...Object.assign()方法实行是浅拷贝,不是深拷贝。...has(element):如果元素在集合返回 true,否则返回 false。 clear():移除集合所有元素。 size():返回集合所包含元素数量。...remove(key):通过使用键值作为参数来从字典移除键值对应数据值。 has(key):如果某个键值存在于该字典返回 true,否则返回 false。

55600
领券