You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何两段console.log()代码输出结果不一致?

问题解答

你忽略的是console.log对不同类型值的处理逻辑,以及模板字符串的隐式类型转换规则:

  • 直接调用 console.log(clickedEvent.target) 时,浏览器控制台会识别这是一个DOM元素对象,会以可视化的DOM节点形式展示它的结构(也就是你看到的 <div>Account</div>),这是控制台为方便开发者调试做的专属优化。
  • 而使用模板字符串 ${clickedEvent.target} 时,会触发隐式类型转换:JavaScript会自动把DOM元素对象转换成字符串。所有普通对象的默认toString()方法都会返回类似[object 构造函数名]的格式,DOM元素作为对象,自然会返回[object HTMLDivElement]。

如果想在模板字符串里也得到元素的HTML结构,可以手动调用DOM元素的outerHTML或innerHTML属性:

console.log(`Clicked Element:${clickedEvent.target.outerHTML}`)
// 输出:Clicked Element:<div>Account</div>

内容的提问来源于stack exchange,提问作者passion053

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 22:34:49