js 0926

本文介绍了正则表达式的创建方法及应用,包括常见验证模式如邮箱、电话等,并探讨了DOM的基本操作如元素获取、创建、移除等。

一.正则表达式
正则表达式主要用于表单验证:如手机号、邮箱、身份证

在使用正则表达式之前,首先要创建正则表达式对象。Javascript提供两种构建方法:

1.使用正则标识字符串: var  reg=/pattern[ flags]

2.使用内置正则表达式对象:var reg=new regexp("patten",["flags"])

二.正则表达式对象
compile()方法。把正则表达式编译为内部格式,从而执行更快

使用新正则替换旧正则,主要用于提升比较复杂和耗时的处理过程的性能,一般情况很少使用

exec()方法。用于正则表达式在字符串中查找,并返回包含结果的一个数组。

不仅用于判断给定的字符串是否匹配,而且会返回匹配结果的详细信息。

test()方法。返回一个bool值,它指出被查找的字符串是否匹配给定的模式。

使用频繁,主要用于匹配测试,匹配成功返回true ,否则返回false.

中文字符:/^[\ue00-\u9fa5]+$/、

邮箱:/^\s+@[0-9a-zA-Z]+[\.]{1}\w+$/

电话:/^(\d(3,4)?\d(7,8)$/

月份:/^((0?[1-9])[0-2]$/

天数:/^((0?[1-9]|((1,2)[0-9])|30|31)$/

var b=/^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\.]{1}0-9a-zA-Z]$/

三.文档对象模型
html dom:定义了针对html文件的标准对象集合

dom(document object model):文档对象模型

1.获取一个元素

2.移除一个元素

3.创建一个元素

4.向页面添加一个元素

5.给元素绑定一些事件

6.获取元素的属性

7.给元素添加一些css样式

DOM的核心对象就是docment对象

在 Egg.js 项目中出现 `nodejs.TypeError: need object type rule` 错误,一般意味着代码里某个地方期望传入一个对象类型,但实际传入的并非对象。以下是一些可能的解决办法: ### 检查代码中类型相关部分 该错误通常表明代码里某个地方期望传入一个对象类型,但实际传入的并非对象。要仔细检查代码中涉及类型规则的部分,像函数调用、参数传递等。 ```javascript // 示例代码,错误情况 function processRule(rule) { if (typeof rule!== 'object') { throw new TypeError('need object type rule'); } // 处理规则的代码 } // 错误调用 processRule("not an object"); // 正确调用 processRule({ key: 'value' }); ``` ### 调试输出变量类型 在可能出现问题的代码位置添加调试信息,输出变量的类型,从而确认具体是哪个变量不符合对象类型的要求。 ```javascript function someFunction(arg) { console.log(typeof arg); // 输出变量类型 if (typeof arg!== 'object') { throw new TypeError('need object type rule'); } // 后续代码 } ``` ### 检查数据来源 确保数据来源(如 API 响应、用户输入等)提供的是对象类型。如果是从外部获取的数据,要检查数据的格式是否正确。 ```javascript // 假设从 API 获取数据 fetch('https://example.com/api/data') .then(response => response.json()) .then(data => { if (typeof data!== 'object') { console.error('Received non - object data'); } else { // 处理对象数据 } }) .catch(error => console.error(error)); ``` ### 检查库和依赖 有时候该错误可能是由使用的库或依赖引发的。检查这些库的文档,确认使用方式是否正确,也可以尝试更新这些库到最新版本。 ### 使用类型检查工具 借助 TypeScript 等类型检查工具,在编译阶段发现类型错误,避免运行时出现 "TypeError"。 ```typescript function processRule(rule: object) { // 处理规则的代码 } // 错误调用会在编译阶段报错 // processRule("not an object"); // 正确调用 processRule({ key: 'value' }); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值