为何有的时候使用 ` Array#sort()` ,这个#代表什么?

在编程术语中,# 符号通常用来表示实例方法或属性,而 . 则用于静态方法或属性。然而,在 JavaScript 的官方文档或者标准语法中,并没有使用 # 来区分实例方法和静态方法的习惯。
实际上,JavaScript 使用的是点符号 (.) 来访问对象的方法和属性,无论是静态的还是实例的。

对于 Array#sort() 这样的表达方式,它并不是 JavaScript 语言本身的语法,而是某些文档或社区为了更清晰地传达信息所采用的一种约定。具体来说:

  • Array#sort():这种写法意味着 sortArray 类型(构造函数)的实例方法。也就是说,你需要先创建一个数组实例,然后才能调用该实例上的 sort 方法。例如:

    const arr = [1, 3, 2]; arr.sort(); // 调用了实例方法
  • 如果是静态方法,可能会写作 Array.from() 或者 Array.of(),这里没有使用 #,因为它们是直接通过 Array 构造函数本身调用的,而不是通过其实例。

因此,当你看到类似 Array#sort() 的表述时,可以理解为这是一种非正式的、便于阅读的方式,用来强调 sort 方法应该在 Array 的实例上调用。
在实际的 JavaScript 代码中,你会像平常一样使用点符号来访问这些方法:

let myArray = [4, 1, 3, 2]; myArray.sort(); // 正确的 JavaScript 语法

总结一下,# 在这里并不属于 JavaScript 的语法元素,而是某些文档或指南中用来区分实例方法与静态方法的一种标记方式。
在真实的代码编写过程中,请按照常规的 JavaScript 语法规范使用点符号 (.) 来访问对象的方法和属性。


__EOF__

本文作者龙陌
本文链接https://www.cnblogs.com/longmo666/p/18689125.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   龙陌  阅读(10)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2024-01-24 try catch 有finally吗
点击右上角即可分享
微信分享提示