JavaScript
僵尸C掉了我的脑子
路漫漫其修远兮
展开
-
面试题 原型
测试题1 var A = function () {} A.prototype.n = 1 var b = new A() A.prototype = { n: 2, m: 3 } var c = new A() console.log(b.n, b.m, c.n, c.m) // 1 undefined 2 3 console.log(b, c) 测试题2 function F() {} Object.prototype.a = function () { console.log('a()'原创 2021-08-05 17:38:52 · 156 阅读 · 0 评论 -
base64的编码与解码
原生JavaScript方法关于base64的编码与解码 有时,文本里面包含一些不可打印的符号,比如 ASCII 码0到31的符号都无法打印出来,这时可以使用 Base64 编码,将它们转成可以打印的字符。另一个场景是,有时需要以文本格式传递二进制数据,那么也可以使用 Base64 编码。 谓 Base64 就是一种编码方法,可以将任意值转成 0~9、A~Z、a-z、+和/这64个字符组成的可打印字符。使用它的主要目的,不是为了加密,而是为了不出现特殊字符,简化程序的处理。 JavaScript 原生提供两原创 2020-05-26 16:44:12 · 380 阅读 · 1 评论 -
js遍历嵌套数组(递归)
js中两种for循环 for(var i in obj)和 for(var i=0;i<obj.length;i++)的区别: 第一个是增强for循环,是不使用下标的一种遍历方式,简单高效,缺点是不能使用下标。 如果想要循环一个json就用第一个,如果想循环一个数组就用第二个 for(var i in obj) 1.遍历数组时,i是索引号,arr[i]是索引号对应的值。 2.遍历字符串时,i...原创 2020-04-09 16:54:53 · 12310 阅读 · 0 评论 -
永远不要测试某个特定的浮点数值
Javascript的数字类型是以64位的IEEE 754格式存储的 浮点数值计算会产生舍入误差的问题,这是使用基于IEEE754 数值的浮点计算的通病 浮点数值的最高精度是 17 位小数,但在进行算术计算时其精确度远远不如整数。例如,0.1 加 0.2的结果不是 0.3,而是 0.30000000000000004。这个小小的舍入误差会导致无法测试特定的浮点数值。 例如: // 不要做这样的...原创 2019-12-06 15:24:21 · 189 阅读 · 0 评论