随笔分类 -  JS

switch和if else的比较
摘要:if-else只是单纯地一个接一个比较;if...else每个条件都计算一遍; switch使用了Binary Tree算法;绝大部分情况下switch会快一点,除非是if-else的第一个条件就为true编译器编译switch与编译if...else...不同。不管有多少case,都直接跳转,不需 阅读全文

posted @ 2020-04-21 13:41 ranyonsue 阅读(6657) 评论(2) 推荐(0) 编辑

JS实现千分位
摘要:方法一:正则实现 function format (num) { var reg=/\d{1,3}(?=(\d{3})+$)/g; return (num + '').replace(reg, '$&,'); }解释 正则表达式 \d{1,3}(?=(\d{3})+$) 表示前面有1~3个数字,后面 阅读全文

posted @ 2019-11-25 17:06 ranyonsue 阅读(2256) 评论(0) 推荐(0) 编辑

ES6模版字符串
摘要:传统的 JavaScript 语言,输出模板通常是这样写的(下面使用了 jQuery 的方法)。 $('#result').append( 'There are <b>' + basket.count + '</b> ' + 'items in your basket, ' + '<em>' + b 阅读全文

posted @ 2019-11-05 14:06 ranyonsue 阅读(417) 评论(0) 推荐(0) 编辑

预加载的实现方式
摘要:1、预加载的实现方式 ①、用CSS和JavaScript实现预加载 实现预加载图片有很多方法,包括使用CSS、JavaScript及两者的各种组合。这些技术可根据不同设计场景设计出相应的解决方案,十分高效。单纯使用CSS,可容易、高效地预加载图片,代码如下: #preload-01 { backgr 阅读全文

posted @ 2019-11-01 17:29 ranyonsue 阅读(4787) 评论(0) 推荐(0) 编辑

如何实现下拉弹出框渐渐弹出
摘要:直接上demo: <div class="container showdiv fadediv"> <ul> <li></li> <li></li> <li></li> <li></li> <li></li> <li></li> </ul> </div> .container { overflow: 阅读全文

posted @ 2019-10-14 15:38 ranyonsue 阅读(739) 评论(0) 推荐(0) 编辑

纯函数以及为什么要用纯函数
摘要:什么函数是纯的? 纯函数的定义是: 1. 如果函数的调用参数相同,则永远返回相同的结果。它不依赖于程序执行期间函数外部任何状态或数据的变化,必须只依赖于其输入参数。 2. 该函数不会产生任何可观察的副作用,例如网络请求,输入和输出设备或数据突变(mutation)。 这就是纯的函数。 如果一个函数符 阅读全文

posted @ 2019-09-02 10:05 ranyonsue 阅读(3702) 评论(0) 推荐(1) 编辑

js中toFixed精度问题的原因及解决办法
摘要:toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。例如将数据Num保留2位小数,则表示为:toFixed(Num);但是其四舍五入的规则与数学中的规则不同,使用的是银行家舍入规则,银行家舍入:所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法。具体规则如下: 阅读全文

posted @ 2019-08-21 13:41 ranyonsue 阅读(13617) 评论(0) 推荐(0) 编辑

js浮点数精度丢失问题及如何解决js中浮点数计算不精准
摘要:js中进行数字计算时候,会出现精度误差的问题。先来看一个实例: console.log(0.1+0.2 0.3);//false console.log(0.1+0.1 0.2);//true 上面第一个的输出会超出我们的常识,正常应该为true,这里为什么会是false呢,直接运行会发现0.1+0 阅读全文

posted @ 2019-08-19 17:03 ranyonsue 阅读(8282) 评论(1) 推荐(0) 编辑

JS封装
摘要:1、对象原型封装 基本思想是在原函数中建立getter和setter方法,之后在原函数的原型进行其他操作。 好处:只能通过get和set访问函数中的数据,实现额真正的封装,实现了属性的私有化 劣处:这样做所有的方法都在对象中,会增加内存的开销 测试demo: /** 1、这种封装个方法getter和 阅读全文

posted @ 2019-07-22 18:03 ranyonsue 阅读(829) 评论(0) 推荐(0) 编辑

js继承的6种方式
摘要:想要继承,就必须要提供个父类(继承谁,提供继承的属性) 一、原型链继承 重点:让新实例的原型等于父类的实例。 特点:1、实例可继承的属性有:实例的构造函数的属性,父类构造函数属性,父类原型的属性。(新实例不会继承父类实例的属性!) 缺点:1、新实例无法向父类构造函数传参。 2、继承单一。 3、所有新 阅读全文

posted @ 2019-07-17 16:23 ranyonsue 阅读(187967) 评论(7) 推荐(17) 编辑

js中!和!!的区别及用法
摘要:js中!的用法是比较灵活的,它除了做逻辑运算常常会用!做类型判断,可以用!与上对象来求得一个布尔值, 1、!可将变量转换成boolean类型,null、undefined和空字符串取反都为true其余都为false。 !null=true !undefined=true !''=true !100= 阅读全文

posted @ 2019-07-03 15:54 ranyonsue 阅读(2183) 评论(0) 推荐(0) 编辑

JS中判断对象是不是数组的方法
摘要:JavaScript中检测对象的方法 1.typeof操作符 这种方法对于一些常用的类型来说那算是毫无压力,比如Function、String、Number、Undefined等,但是要是检测Array的对象就不起作用了。 利用typeof除了array和null判断为object外,其他的都可以正 阅读全文

posted @ 2019-06-28 16:13 ranyonsue 阅读(7437) 评论(0) 推荐(0) 编辑

return、reutrn false、e.preventDefault、e.stopPropagation、e.stopImmediatePropagation的区别
摘要:return var i = function(){ return } console.log(i())//undefined return的主要作用是阻止函数继续执行,直接返回undefined return false <a class="baidu" href="http://www.baid 阅读全文

posted @ 2019-05-15 15:42 ranyonsue 阅读(502) 评论(0) 推荐(0) 编辑

前端获取图片存储大小的方法
摘要:1利用input元素获取 如果是input元素 <input type="file" id='myinput'> var file=document.getElementById('myinput'); var fileData = file.files[0]; var size = fileDat 阅读全文

posted @ 2019-04-29 17:54 ranyonsue 阅读(4078) 评论(0) 推荐(0) 编辑

JavaScript match()方法和正则表达式match()
摘要:先介绍参数为普通字符串的使用方式,此时match方法的返回值是存放首次匹配内容的数组。如果没有找到匹配结果,返回null。语法结构: 1 str.match(searchvalue)参数解析:(1).searchvalue:必需,规定方法要检索的字符串。代码实例: let str="antzone" 阅读全文

posted @ 2019-04-23 17:14 ranyonsue 阅读(24988) 评论(0) 推荐(0) 编辑

获取Iframe页面高度并赋值给Iframe以及获取iframe里的元素
摘要:最近接手了别人的项目,别人用到了iframe,自己在实战中总结了一些关于iframe的小问题。 获取Iframe页面高度并赋值给Iframe Html <iframe name="container_ifranme" id="iframeId" scrolling="no" frameborder= 阅读全文

posted @ 2019-04-10 17:28 ranyonsue 阅读(9958) 评论(0) 推荐(0) 编辑

函数参数中的中括号代表什么
摘要:看文档的时候产生的疑问,如一个node中的write方法: buf.write(string[, offset[, length]][, encoding]) 函数参数中的中括号代表什么了?怎么有些只有半个括号,比如string[ 或 offset[;而有的却是length]][这样了? 简单的回答 阅读全文

posted @ 2019-02-21 11:30 ranyonsue 阅读(5443) 评论(0) 推荐(0) 编辑

js中constructor和prototype
摘要:在最开始学习js的时候,我们在讲到原型链和构造函数的时候经常会有一个例子 如果我们定义函数如下: function Foo() { /* .. */ } Foo.prototype.bar = function(){}; var a1 = new Foo(); a1.constructor Foo; 阅读全文

posted @ 2019-02-12 15:08 ranyonsue 阅读(1715) 评论(0) 推荐(0) 编辑

isPrototypeOf、instanceof、hasOwnProperty函数介绍
摘要:isPrototypeOf 作用:检测一个对象是否是另一个对象的原型。或者说一个对象是否被包含在另一个对象的原型链中 var p = {x:1};//定义一个原型对象 var o = Object.create(p);//使用这个原型创建一个对象 p.isPrototypeOf(o);//=>tru 阅读全文

posted @ 2019-02-11 15:46 ranyonsue 阅读(476) 评论(0) 推荐(0) 编辑

js中的匿名函数
摘要:匿名函数顾名思义指的是没有名字的函数,在实际开发中使用的频率非常高!也是学好JS的重点。 匿名函数:没有实际名字的函数。 首先我们声明一个普通函数: //声明一个普通函数,函数的名字叫fn function fn(){ console.log("张培跃"); } 然后将函数的名字去掉即是匿名函数: 阅读全文

posted @ 2018-12-26 18:50 ranyonsue 阅读(71047) 评论(2) 推荐(24) 编辑

导航