首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS基础(

正则表达式验证邮箱 ^ : 表示从字符串开始的地方就验证 $ : 表示结束检测 /w : 匹配所有的数字和字母以及下划线 利用正则寻找邮箱 exec() 方法用于检索字符串中的正则表达式的匹配。...执行从内到外找 具体步骤: 0: 函数运行前的1瞬间, 生成 Active Object (活动对象),称AO 1: 1.1 函数声明的形参,形成AO的属性,值全是undefined,...不管被调用函数,声明时属于方法,还是函数 3:函数作为构造函数调用时 JS没有类的概念,常见对象是用构造函数来完成的,或者直接使用json格式来写对象 new Dog发生了以下几个步骤 系统创建空对象..., 所以叫"闭包" ----一句话概括-----函数的作用域取决于声明时,而不取决于调用时 JS对象的特点 在js中,有对象,没有类(但有构造函数), JS中的对象,不依赖于类而存在, 支持任意添加和删除属性...JS封装 通过闭包来完成js面向对象的私有属性与封装 ?

1.8K70
您找到你想要的搜索结果了吗?
是的
没有找到

「硬核JS数字之美

数字和位运算又是不同的两个点,所以直接淦位运算可能并不太好,就拿出了此文修补一番发一,也算是来补一补之前写一半就罢工的文章,随后再补发一篇位运算的文章 数字,很普通的东西,所有语言都有数字,本文的大部分知识点并不仅仅适用于...=0) 测试一哈 可能大家还是有些迷惑,最好反复看一看,那么歇一歇脑子,接下来我们来一个小测试,计算一十进制数 -15.125 在 JS 内存中的二进制表达方式是多少,动手试一试吧,做完再看答案 |...求到的最大数字值吗,现在就可以在控制台输出一,即 1.7976931348623157e+308,和我们估算出来的值非常相近(因为为了简单我们把规格化的数字约等于了 2 来计算,算出的数值其实是大了一点的...) 所以数字的最大正数和最小负数范围如下 1.7976931348623157e+308 ~ -1.7976931348623157e+308 如果超过这个值,则数字太大就溢出了,在 JS 中会显示...0,学名反向溢出 JS中整数的范围 和数字大小不同,数字可以有小数,但是整数就只是单纯整数 我们从尾数 M 来分析,精度最多是 53 位(包含规格化的隐含位 1 ),精确整数的范围其实就是 M 的最大值

5.4K20

JS】125-重温基础:数字

「本章节复习的是JS中的数字类型,涉及的API比较多。」 前置基础: 在JavaScript中,数字为双精度浮点类型(即一个数字范围只能在-(253-1)和(253-1)之间),整数类型也一样。...另外数字类型也可以是以下三种符号值: +Infinity : 正无穷; -Infinity : 负无穷; NaN : 非数字(not a number); 1.数字对象 JS中内置了Number对象的一些常量属性...= 0.2, c = 0.3; let d = (Math.abs(a + b - c) < Number.EPSILON); d; // true Number.MIN_SAFE_INTEGER JS...Number.MAX_SAFE_INTEGER JS中最大的安全的integer型数字 (253 - 1)。...let a2 = '字符串:' + a.toPrecision(1);// "字符串:1" let a2 = '字符串:' + a.toPrecision(2);// "字符串:1.2" 3.数学对象 JS

2.5K00

聊聊数字签名()

案例分析 阅读了支付宝、微信支付、腾讯云、阿里云的开放文档,发现他们签名方式几乎一致,在不同的场景分别使用MD5和数字证书签名,甚至在不同的时间节点进行相同类型的升级,下面是我各大平台的开放文档中找到的作为案例分析...现在我们再来看这两个参数,很多地方说nostr是用来增加签名的不可预测性,但是我认为这是不正确的,在signkey没有泄漏的情况,由于MD5的特性,任何人都无法仿冒签名或者预测签名。...这里再额外说一为什么需要nostr和timestamp两个参数来解决重放攻击问题: 1)假如只有nostr服务器就需要永久的缓存使用过的nostr,这个存储成本以及检索效率都是问题; 2)假如只有timestamp...但是还记得上篇中讲到数字证书出现的原因吗,是为了解决中间人攻击问题,它能够解决中间人攻击的原因正是因为证书颁发机构是可信的,但是如果使用了自签名,签名机构是没有经过认证的,也就是不可信的,一切又回到了原点

85720

js数字计算精度问题修正

这是加法中存在问题,乘法当中依然存在,你可以用程序计算一4330.61*100,计算结果依然是不准确。 ? 当着写计算结果应用到金钱的计算上的时候,就会出现大的问题,N笔交易以后产生的效果更大。...至于产生的原因可以参考=>js浮点数精度问题的前世今生? 解决方法 浮点数计算本身就有精度缺失的问题,要解决他首先就不进行浮点数运算,就是将其转变为整数,然后再进行除法,换算为浮点数。...", "")) / Math.pow(10, c); } 首先,将两个需要运算的数字进行字符串化,然后依次判断小数点后有几位,因为后面需要进行除法,所以这里的小数点位数需要相加,然后将字符串化后的两个值去除小数点...,在进行数字化,此时两个数字都已经变成了整数,此时在进行乘法运算,得出精确的结果,之后再除以因为去除小数点放大的倍数,由此得出精确地计算结果。

3.1K20
领券