如何通过深入理解JavaScript实现代码的私有化处理?

2026-04-09 19:471阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1692个文字,预计阅读时间需要7分钟。

如何通过深入理解JavaScript实现代码的私有化处理?

JavaScript类的字段声明已进入stage-3,其中包含一个OOP开发者非常关注的特性:私有字段(Private fields)。JavaScript本身没有私有成员的概念,这不是因为缺乏原因,而是因为...

Class field declarations for JavaScript(JavaScript 类的字段声明)目前已经进入了 stage-3,其中包含一项 OOP 开发者都很关注的内容:Private fields。JavaScript 一直没有私有成员并不是没有原因,所以这一提议给 JavaScript 带来了新的挑战。但同时,JavaScript 在 ES2015 发布的时候已经在考虑私有化的问题了,所以要实现私有成员也并非毫无基础。


首先挖个坑 —— 这是一段 JS 代码,BusinessView 中要干两件事情,即对表单和地图进行布局。

代表将 _ 前缀约定为私有

class BaseView { layout() { console.log("BaseView Layout"); } } class BusinessView extends BaseView { layout() { super.layout(); this._layoutForm(); this._layoutMap(); } _layoutForm() { // .... } _layoutMap() { // .... } }

然后,由于业务的发展,发现有很多视图都存在地图布局。

阅读全文

本文共计1692个文字,预计阅读时间需要7分钟。

如何通过深入理解JavaScript实现代码的私有化处理?

JavaScript类的字段声明已进入stage-3,其中包含一个OOP开发者非常关注的特性:私有字段(Private fields)。JavaScript本身没有私有成员的概念,这不是因为缺乏原因,而是因为...

Class field declarations for JavaScript(JavaScript 类的字段声明)目前已经进入了 stage-3,其中包含一项 OOP 开发者都很关注的内容:Private fields。JavaScript 一直没有私有成员并不是没有原因,所以这一提议给 JavaScript 带来了新的挑战。但同时,JavaScript 在 ES2015 发布的时候已经在考虑私有化的问题了,所以要实现私有成员也并非毫无基础。


首先挖个坑 —— 这是一段 JS 代码,BusinessView 中要干两件事情,即对表单和地图进行布局。

代表将 _ 前缀约定为私有

class BaseView { layout() { console.log("BaseView Layout"); } } class BusinessView extends BaseView { layout() { super.layout(); this._layoutForm(); this._layoutMap(); } _layoutForm() { // .... } _layoutMap() { // .... } }

然后,由于业务的发展,发现有很多视图都存在地图布局。

阅读全文