public和chain格式有什么区别
时间: 2024-09-20 13:13:22 浏览: 61
在JavaScript中,`public` 和 `private`(链式调用通常和 `this` 关联,用于描述类内部的方法调用)是两个不同的访问控制修饰符:
1. **Public** (公共):当一个成员变量或方法声明为 `public` 时,它可以从类的任何地方(包括外部)直接访问。例如:
```javascript
class MyClass {
public myVariable = "Hello";
public myMethod() { console.log(this.myVariable); }
}
```
可以通过 `new MyClass().myVariable` 或 `new MyClass().myMethod()` 进行操作。
2. **Private** 或者说 **受限访问**:尽管 JavaScript 没有真正的私有属性,但可以使用一些技巧模拟,如使用闭包或 `#` 开头。然而,现代 ES6 中引入了更严格的 `private` 关键字(在类的上下文中有效),它类似于 Java 的 `private`,只允许在类的内部访问。但即使是这些“私有”属性,在某些运行环境(如 Node.js)中仍然可能被暴露出去。
链式调用(chaining)通常是针对方法的,特别是那些返回自身实例以便连续调用其他方法的对象。例如在 jQuery 中:
```javascript
let element = $("#someElement");
element.css("color", "red").fadeIn();
```
这里,`.css()` 方法返回元素本身,使得后续可以继续调用 `.fadeIn()` 方法,形成链式操作。
总结一下,`public` 控制的是对成员的可见性,而链式调用则是一种函数式编程风格,强调代码的简洁和连贯性。
阅读全文
相关推荐
Filter filter = new Filter() { @Override public void init(javax.servlet.FilterConfig filterConfig) throws ServletException { } @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { chain.doFilter(request, response); // 重置缓冲区,响应头不会被重置 response.resetBuffer(); // 获取common.js String text = Utils.readFromResource(filePath); // 正则替换banner, 除去底部的广告信息 text = text.replaceAll("<a.*?banner\">
", ""); text = text.replaceAll("powered.*?shrek.wang", ""); response.getWriter().write(text); } @Override public void destroy() { } }; 这段代码中为什么destroy方法体是空的