21

我是 Javascript 新手,我正在尝试理解一些代码。我不明白,也找不到有关该#标志的任何文档。

$(function () {
      $("#searchTerm").autocomplete({

$("#searchTerm") 是什么意思?

4

8 回答 8

23

现在 # 将/可能表示私有实例字段:https ://tc39.github.io/proposal-class-fields/

2021 年更新:

默认情况下,类字段是公共的,但可以使用哈希 # 前缀创建私有类成员。这些类特性的隐私封装由 JavaScript 本身强制执行。

class ClassWithPrivateField {
  #privateField;
}

class ClassWithPrivateMethod {
  #privateMethod() {
    return 'hello world';
  }
}

class ClassWithPrivateStaticField {
  static #PRIVATE_STATIC_FIELD;
}

class ClassWithPrivateStaticMethod {
  static #privateStaticMethod() {
    return 'hello world';
  }
}

来源:https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Private_class_fields

于 2019-05-18T03:12:27.610 回答
20

在 JavaScript 中?没什么特别的。它只是字符串的一部分。

函数可能会用$它做点什么,但很难说$函数是什么。

有很多库提供了$充当该库的厨房水槽的功能。它们包括原型MootoolsjQuery。这个看起来最像 jQuery,在这种情况下,参数是一个包含CSS 选择器的字符串,所以#表示id 选择器的开始。

这“选择具有给定 id 属性的单个元素”。

于 2012-06-05T14:44:30.050 回答
13

那是 jQuery,井号 (#) 指的是元素的 ID。这是 jQuery 选择元素的一种方式。在您的示例中,它将选择 ID 为“searchTerm”的元素。

对于 id 选择器,jQuery 使用 JavaScript 函数 document.getElementById(),效率极高。当另一个选择器附加到 id 选择器时,例如 h2#pageTitle,jQuery 在将元素识别为匹配之前执行额外的检查。

与往常一样,请记住,作为开发人员,您的时间通常是最宝贵的资源。不要专注于优化选择器速度,除非很明显需要提高性能。

每个 id 值只能在文档中使用一次。如果为多个元素分配了相同的 ID,则使用该 ID 的查询将仅选择 DOM 中第一个匹配的元素。但是,不应依赖此行为;具有多个使用相同 ID 的元素的文档无效。

如果 id 包含句点或冒号等字符,则必须使用反斜杠转义这些字符。

见:http ://api.jquery.com/id-selector/

于 2012-06-05T14:44:36.867 回答
4

那只是一个字符串。#只是字符串的一部分。我假设$是jQuery。

这意味着,该字符串是一个 jQuery 选择器(或者更确切地说是一个 CSS 选择器)。意思是“#身份证”。它在 DOM 中搜索 ID 为“searchTerm”的元素。

于 2012-06-05T14:44:34.820 回答
4

根据给定的信息,它很可能是 jQuery ID 选择器

http://api.jquery.com/id-selector/

于 2012-06-05T14:46:06.187 回答
2

那是 HTML 中元素的 id 选择器(具体来说是在 DOM 中)。

于 2012-06-05T14:44:51.303 回答
1

这是一个元素 ID,例如:`...

当你需要用 JS 或 jQuery 访问这个 div 时,只需调用它。$("#xyz")做一些事情

上课<div class="abc">....</div>>>$(".abc")

于 2016-02-16T17:37:06.393 回答
0

那不是普通的 Javascript!那是jQuery!

在 jQuery 中,您可以通过 CSS 样式选择器选择元素。在这种情况下,#x是一个 CSS 选择器,用于选择具有 id 的所有元素x

于 2012-06-05T14:44:36.387 回答