问答

JS 引用对比引擎内部是如何实现的?

作者:admin 2021-08-09 我要评论

例如 const fun = () = 1const fun1 = funconsole.log(fun === fun1) // true 这里的 fun === fun1 内部发生了什么? const arr [1,2,3]const arr1 = arrconsole...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

例如

const fun = () => 1
const fun1 = fun

console.log(fun === fun1) // true

这里的 fun === fun1 内部发生了什么?

const arr [1,2,3]
const arr1 = arr

console.log(arr === arr1) // true

这里的 arr === arr1 内部发生了什么?

查资料 Function/Array 也可以通过 .toString() 来进行比较(===),有大佬知道引擎内部是如何执行的吗?

###

我想这个应该直接就是对象实例的对比,相当于比较内存地址。

###

函数和数组都是js引用类型数据,arr和arr1的标识符进行比较的话,是比较标识符引用的一块内存区域值,具体怎么实现的,应该去看V8源码吧

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • JS 引用对比引擎内部是如何实现的?

    JS 引用对比引擎内部是如何实现的?

  • 请问这个数组怎么copy出来,

    请问这个数组怎么copy出来,

  • laravel 上传文件至oss 如何设置http头

    laravel 上传文件至oss 如何设置http头

  • 自建Sentry 后,上传的sourceMap文件到

    自建Sentry 后,上传的sourceMap文件到

腾讯云代理商
海外云服务器