JS设计模式学习笔记一:对象收编变量 检测类

2024-06-18 12:58

本文主要是介绍JS设计模式学习笔记一:对象收编变量 检测类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.1函数基本形式(全局变量)

     function checkName(){    //验证姓名} function checkEmail(){  //验证邮箱}function checkPassword(){ //验证密码}

1.2函数的另一种形式 (全局变量)

   var checkName =function(){   //验证姓名}var checkEmail = function(){  //验证邮箱}var checkPassword=function(){ //验证密码} 

上面声明了多个函数也就是多个全局变量,当多人协作时,如果别人也定义了同样的方法或者自己定义了很多方法,就容易存在被覆盖的风险,且这种相互覆盖的问题是不容易察觉的。所以可以将它们放在一个变量里保存,这样就可以减少覆盖或被覆盖的风险,当然一旦被覆盖所有的功能都会失效,但这种现象很明显也容易察觉。

1.3 用对象收编变量:
可以创建一个检测对象,然后把函数方法放在里面:

   var CheckObject={checkName: function(){  //验证姓名},checkEmail:function(){  //验证邮箱},checkPassword:function(){ //验证密码}
}  

这里我们将所有函数作为CheckObject 对象的方法,这样我们就只有一个对象,而我们要想使用它们也很简单,比如检测姓名CheckObejct.checkName(),只是在我们原来使用的函数式前面多了个对象名称。

1.4 对象的另一种形式:
在JS中函数也是一种对象,所以可以有如下写法:

 var CheckObject = function(){};CheckObject.checkName = function(){//验证姓名
}CheckObject.checkEmail = function(){//验证邮箱
}CheckObject.checkPassword=function(){//验证密码
} 

使用和前面的方式是一样的,比如CheckObject.checkName(),但这个对象类在用new 关键字创建新的对象时,新创建的对象是不能继承这些方法的。

1.5 真假对象
如果想简单得复制对象,可以将这些方法放在一个函数对象中:

  var CheckObject = function(){return {checkName:function(){//验证姓名},checkEmail:function(){//验证邮箱},checkPassword:function(){//验证密码}}
}

var a = CheckObject();
a.checkEmail();

这篇关于JS设计模式学习笔记一:对象收编变量 检测类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1072059

相关文章

Python中判断对象是否为空的方法

《Python中判断对象是否为空的方法》在Python开发中,判断对象是否为“空”是高频操作,但看似简单的需求却暗藏玄机,从None到空容器,从零值到自定义对象的“假值”状态,不同场景下的“空”需要精... 目录一、python中的“空”值体系二、精准判定方法对比三、常见误区解析四、进阶处理技巧五、性能优化

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre

C#原型模式之如何通过克隆对象来优化创建过程

《C#原型模式之如何通过克隆对象来优化创建过程》原型模式是一种创建型设计模式,通过克隆现有对象来创建新对象,避免重复的创建成本和复杂的初始化过程,它适用于对象创建过程复杂、需要大量相似对象或避免重复初... 目录什么是原型模式?原型模式的工作原理C#中如何实现原型模式?1. 定义原型接口2. 实现原型接口3

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Java实现将byte[]转换为File对象

《Java实现将byte[]转换为File对象》这篇文章将通过一个简单的例子为大家演示Java如何实现byte[]转换为File对象,并将其上传到外部服务器,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言1. 问题背景2. 环境准备3. 实现步骤3.1 从 URL 获取图片字节数据3.2 将字节数组