随笔分类 -  javascript

1
摘要:设计模式是解决某个特定场景下对某种问题的解决方案 下面介绍学习几个常见的js设计模式 1、单例模式 单例模式:顾名思义就是一个类只能生成一个实例,并提供一个访问它的全局访问点。实现的方法为先判断实例存在与否,如果存在则直接返回,如果不存在就创建了再返回,这就确保了一个类只有一个实例对象。 适用场景: 阅读全文
posted @ 2019-08-08 17:51 ABC袁 阅读(326) 评论(0) 推荐(0)
摘要:redux是一种架构模式(Flux 架构的一种变种),是 JavaScript 状态容器,提供可预测化的状态管理,可以用在React、Angular、Ember、jQuery 甚至纯 JavaScript,但不能用于vue。 下面是参照网上写的简单实现: 参照出处动手实现redux 阅读全文
posted @ 2019-08-07 11:10 ABC袁 阅读(250) 评论(0) 推荐(0)
摘要:众所周知,JavaScript 浮点数运算时经常遇到会 0.000000001 和 0.999999999 这样奇怪的结果,如 0.1+0.2=0.30000000000000004、1-0.9=0.09999999999999998,原因主要是数字存储计算是采用的是二进制,计算完成后又变成十进制的 阅读全文
posted @ 2019-04-10 14:46 ABC袁 阅读(472) 评论(0) 推荐(0)
摘要:js中基本数据类型有6种number、string、undefined、null、boolean,Symbol (ES6 新增,表示独一无二的值),还有一种数据类型为引用数据类型统称为Object对象,其中包括常见的Arry(数组)、Function(函数)、Date等, 基本数据类型 1、值是不可 阅读全文
posted @ 2019-01-17 16:04 ABC袁 阅读(1996) 评论(0) 推荐(1)
摘要:js中什么都是对象,什么对象呢一般而言对象是属性和方法的集合(也有人说是属性的集合,因为方法也是属性)。属性是对象的状态,方法是对象的行为(完成某种任务)。比如,我们可以把动物抽象为animal对象,使用“属性”记录具体是那一种动物,使用“方法”表示动物的某种行为(奔跑、捕猎、休息等等)。 说到对象 阅读全文
posted @ 2018-11-05 15:57 ABC袁 阅读(381) 评论(0) 推荐(0)
摘要:js是一门相当灵活的语言。当我们在js中在调用一个函数的时候,我们经常会给这个函数传递一些参数,js把传入到这个函数的全部参数存储在一个叫做arguments的东西里面,那么这到底是什么东西? 首先来建一个函数,简单的看一下里面的一些情况 从结果中我们可以的出一下:arguments它并不是一个数组 阅读全文
posted @ 2018-11-02 17:12 ABC袁 阅读(667) 评论(0) 推荐(0)
摘要:1、首先是encodeURI和encodeURIComponent; 从名字可以清晰的看出他两都是主要用于url编码的,那之间有什么区别呢?唯一区别就是编码的字符范围,其中 encodeURI方法不会对下列字符编码 ASCII字母、数字、~!@#$&*()=:/,;?+'; encodeURICom 阅读全文
posted @ 2018-08-06 17:23 ABC袁 阅读(455) 评论(0) 推荐(0)
摘要:在前端按需加载js是优化性能的一个方向, 现在script标签加载js基本是异步的,为了减少白屏可以在页面body加载完之后再去按需加载js,script也是标签所以我们可以像img等标签一样去使用它,下面是封装的函数,利用回调可以控制js的执行顺序, 就可以快速的使用了 但这种方法对于需要加载很多 阅读全文
posted @ 2018-05-21 15:46 ABC袁 阅读(1987) 评论(0) 推荐(0)
摘要:1、采用正则,这也是现在使用最为方便的 首先是定义一个正则,将传入的参数传入其中。 然后就是window.location.search,search()是查找字符串指定的字符,默认返回第一个字符的位置,如果没有则返回-1,不过这里的search却不是这样使用的,我们把window.location 阅读全文
posted @ 2018-01-10 10:21 ABC袁 阅读(20918) 评论(0) 推荐(0)
摘要:首先什么是对象?根据W3C上面的解释JS中所有事物都是对象,对象是拥有属性和方法的数据,由此可以看出基本值类型不是对象(number、string、Boolean、Undefined),剩下的引用类型(函数、数组、null...)都是对象,也有人说对象是若干属性的集合。 那么函数和对象是什么关系? 阅读全文
posted @ 2017-12-25 15:16 ABC袁 阅读(15907) 评论(4) 推荐(2)
摘要:1、利用for循环 2、利用JQ里面的isEmptyObject()来判断的,其实本质上也是利用了for in 对属性的枚举。 3、转换成对象字符串来判断 阅读全文
posted @ 2017-12-07 22:38 ABC袁 阅读(2104) 评论(0) 推荐(0)
摘要:之前总结过简单的数组排序,最近在工作中遇到要利用数组里面对象的某个属性值进行排序,最开始我用的是循环,从而对比它的属性值,忽然在高级程序设计上看到了更为简洁的办法,就是用sort(),以及作为值得函数,sort()很常用的排序方法,最主要的是里面的比较函数参数,最重要的是定义一个比较函数如下: 这个 阅读全文
posted @ 2017-12-05 22:50 ABC袁 阅读(3639) 评论(1) 推荐(1)
摘要:1、普通js实现保留两位小数。 阅读全文
posted @ 2017-11-01 15:46 ABC袁 阅读(476) 评论(0) 推荐(0)
摘要:有时候我们会需要来根据不同的设备访问进行不同的操作,在网上找了一下,主要是根据Navigator对象, 阅读全文
posted @ 2017-10-30 14:18 ABC袁 阅读(1021) 评论(0) 推荐(0)
摘要:总结一些数组去重,首先定义一个数组 var arry1=[1,5,6,4,8,4,5,5,40,4,50,7,4,55,6,5,444,5,4,4,2,4,5,7,8,8]; 1、最常用的,新建数组利用循环进行数组比对,小数组可以,大的性能不佳。 2、推荐使用的,利用对象保存数组for循环时,每次取 阅读全文
posted @ 2017-10-23 15:19 ABC袁 阅读(221) 评论(0) 推荐(0)
摘要:今天遇到个问题,就是vue绑定的数组在push中所有的数组都会跟着改变。这个主要是因为 JavaScript中对象或者数组等引用类型,直接拷贝,改变一个另外一个也会改变; 有个简单的方法就是先转换为字符串再转换为json 上面这是没转换的. 1、通过JSON.stringfy()和JSON.pars 阅读全文
posted @ 2017-09-28 10:32 ABC袁 阅读(253) 评论(0) 推荐(0)
摘要:js排序在日常中用的比较少,一般都是后台直接从数据库获取数据的的时候就排好了,不过也可以了解一下基础的排序。 1、冒泡排序,简单说就是让每个数与其他数依次比对,一般是从第一个数开始的,特点是简单容易理解,缺点是适合数量较少的排序,性能一般。 2、插入法排序,就是先假设第一个已近排好了序,然后依次往后 阅读全文
posted @ 2017-09-27 19:36 ABC袁 阅读(990) 评论(0) 推荐(0)
摘要:1、在js中使用typeof来判断类型非常简单但其实还是存在判断失误问题的比如下面 这就很明显了可以通过Object.prototype.toString.call(bar) "[object Object]" 来避免这种弊端: 在jquery里面有更加方便的$.type(); 阅读全文
posted @ 2017-09-01 16:47 ABC袁 阅读(602) 评论(0) 推荐(0)
摘要:立即执行函数 即Immediately Invoked Function Expression (IIFE),正如它的名字,就是创建函数的同时立即执行。它没有绑定任何事件,也无需等待任何异步操作: function(){…}是一个匿名函数,包围它的一对括号将其转换为一个表达式,紧跟其后的一对括号调用 阅读全文
posted @ 2017-08-02 20:13 ABC袁 阅读(186) 评论(0) 推荐(0)
摘要:平时网站的开发中cookie用的还是用的比较多的,因为cookie在客户端,所以用js操作的比较多,下面是常用的设置、查找、删除等功能实现。 阅读全文
posted @ 2017-08-01 14:12 ABC袁 阅读(259) 评论(0) 推荐(0)

1