js_studyShare
文章平均质量分 68
拼搏的小叔
开心往前走。。。。
展开
-
javascript中实现继承的三种方式(一看就懂)
javascript中实现继承的三种方式,简单明了一看就懂。。。。原创 2017-04-30 13:40:26 · 15857 阅读 · 2 评论 -
vue2.0开发环境的搭建详解
一、node的安装和下载node下载官网地址:https://nodejs.org/en/download/ 选择下载适合自己电脑的版本;如果你的电脑已经有个node,但是版本低于4.xxx的话,因该考虑更新一下:npm install -g n //mac版本 sudo npm install -g n升级nodejs是有两种方法: 第一种是升级到最新版本su原创 2017-05-20 20:58:36 · 459 阅读 · 0 评论 -
javascript中for循环里面套定时器,始终打印结束值原因?
for(var i = 0; i < 10; i++) { setTimeout(function() { console.log(i); }, 1000);}由于变量 i 直接暴露在全局作用域内,当调用 console.log 函数开始输出时,这是循环已经结束,所以会输出10个10。这是我对题主问题的理解,希望能对题主有帮助,可能还有不完善的地方,我打算写篇博文好好总结下。原创 2017-06-29 10:56:14 · 6603 阅读 · 2 评论 -
一维数组变二维数组的写法(详解)
最近遇到一个需求,需要把一维数组变二维数组,例如:var arr = [1,2,3,4,5,6,7,8,9];变为[[1,2],[3,4],[5,6],[7,8],9] ;小编写出来了,顺便分享给大家看一下;代码如下:function oneArrToTwoArr(data) { var newData = []; for (var i = 0; i < Math.ceil(d原创 2017-07-11 17:10:37 · 4144 阅读 · 1 评论 -
js仿照聊天记录的时间显示 今天 昨天
var time = '2017年06月02日 10:43:24'; // 时间统一函数 function getTimeText(argument) { var timeS = argument; var todayT = ''; // var yestodayT = ''; var timeCha = getTim原创 2017-07-04 15:25:02 · 8262 阅读 · 5 评论 -
js小数相加、相乘失去精度问题解析详解(最优方案)
我们得到后台返回的float类型的数字,用来相加、相乘失去精度,得到小数点显示很多位,为了这个问题,小编找到一个最优方法,贡献给大家参考。var CMX = CMX || {};/** ** 加 **/CMX.add = function (arg1, arg2) { var r1, r2, m, c; try { r1 = arg1.toString().split(原创 2017-07-22 11:17:57 · 9445 阅读 · 0 评论 -
css3文字模糊代码(详解)
-webkit-transition:0.5s all ease;是会在0.5秒的时间执行li的所有指定的动画,text-shadow:0 0 10px black;这个是对文字设置黑色的阴影,opacity:0.8;这个是整体的透明度color:rgba(0,0,0,0);这个是设置文字的颜色为黑色,然后是指其透明度为全部透明原创 2017-07-31 15:14:44 · 5216 阅读 · 1 评论 -
javascript如何查找字符中的回文串?
题目:javascript如何查找字符中的回文串?所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的。比如"level" 、 “aaabbaaa”function huiString(s) { var t = s.split("").join("#"); t = "~" + t + "#"; var c = 1, e = 0, cs原创 2017-07-24 14:55:11 · 795 阅读 · 0 评论 -
touch事件中的touches、targetTouches和changedTouches(详解)
touches: 当前屏幕上所有触摸点的列表;targetTouches: 当前对象上所有触摸点的列表;changedTouches: 涉及当前(引发)事件的触摸点的列表通过一个例子来区分一下触摸事件中的这三个属性:1. 用一个手指接触屏幕,触发事件,此时这三个属性有相同的值。2. 用第二个手指接触屏幕,此时,touches有两个元素,每个手指触摸点为一个值。当两个手指触摸相同原创 2017-07-24 15:49:20 · 7074 阅读 · 0 评论 -
elementFromPoint的用法(详解)
document.ElementFromPoint:根据坐标获得元素,可用于触屏设备上获取当前点击元素的名称语法:oElement = document . elementFromPoint ( iX , iY )参数:iX : 必选项。整数(Integer)。单位:象素(Pixel)。定位横坐标偏移量。iY : 必选项。整数(Integer)。单位:象素(Pixel)。定原创 2017-07-24 15:58:53 · 14233 阅读 · 1 评论 -
解决手机自带浏览器上,用rem单位,内容超出屏幕宽度问题!(rem计算不准)
问题描述:在H5手机页面上,用rem单位布局,配合js计算出一个根节点的font-size(原理是屏幕宽度乘以一个固定比例,如1/100),之后页面中所有的px全都换算成了rem单位来写,优点是能适配各种不同屏幕尺寸的手机,不需要写媒体查询!例如:设计稿是750px,用js计算出来的根节点font-size是100px(证明此时屏幕宽度是750px),那最外层的容器宽度就写成7.5rem(计算原创 2017-08-09 17:28:13 · 4751 阅读 · 2 评论 -
通过jQuery Ajax使用FormData对象上传文件
FormData对象,是可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发送这个"表单"。在 Mozilla Developer 网站使用FormData对象 有详尽的FormData对象使用说明。但上传文件部分只有底层的XMLHttpRequest对象发送上传请求,那么怎么通过jQuery的Ajax上传呢?本文将介绍通过jQuery使用Form原创 2017-08-17 14:09:34 · 355 阅读 · 0 评论 -
浅谈对象oop的属性和方法以及区别
最近学习了oop面向对象,小编在这里给大家分享了一些关于对象的属性和方法,希望大家查看及修改原创 2017-04-25 11:50:04 · 695 阅读 · 0 评论 -
js数组去重复的最优写法
1.创建一个新的数组存放结果2.创建一个空对象3.for循环时,每次取出一个元素与对象进行对比,如果这个元素不重复,则把它存放到结果数组中,同时把这个元素的内容作为对象的一个属性,并赋值为1,存入到第2步建立的对象中。说明:至于如何对比,就是每次从原数组中取出一个元素,然后到对象中去访问这个属性,如果能访问到值,则说明重复。 Array.prototype.uniq原创 2017-08-21 15:46:25 · 2528 阅读 · 0 评论 -
ios底部输入框输入时被隐藏的bug解决
最近做项目的时候,底部的输入框用了fixed定位固定在底部,当点击输入时,键盘弹起盖住了输入框问题,小编对此问题进行了分析,给了一个完美的解决的方法,方法如下demo。 底部输入框被隐藏的bug解决 * { padding: 0; margi原创 2017-07-27 21:08:24 · 2085 阅读 · 0 评论 -
Normalize.css简书
简介Normalize.css只是一个很小的css文件,但它在默认的HTML元素样式上提供了跨浏览器的高度一致性。相比于传统的css reset,Normalize.css是一种现代的,为HTML5准备的优质替代方案。Normalize.css现在已经被用于Twitter Bootstrap,HTML5 Boilerplate,GOV.UK,Rdio,CSS Tricks以及许许多多其原创 2017-08-14 17:09:20 · 3191 阅读 · 0 评论 -
js 某年的某月多少天(最优)
function getDaysInMonth(year, month) { // 接受俩个参数 年,月 var date = new Date(year, month, 1); return new Date(date.getTime() - 864e5).getDate(); } getDaysInMonth(2018, 2); // 28天...原创 2018-04-09 09:32:59 · 440 阅读 · 0 评论 -
AngularJS 过滤器 (详解)
一、简介 AngularJS过滤器能够用来格式化数据,过滤器能够用在表达式和指令中,也能够注入到其他地方进行使用。AngularJS提供了9种常用的内置过滤器,我们还可以创建自定义过滤器来格式数据,以完成更多个性化的要求。二、使用方式 下面是过滤器的三种使用方式,形式如下。1、在表达式中使用{{ text | uppercase }} //将字符串text大写输出原创 2017-05-19 18:04:23 · 1498 阅读 · 0 评论 -
AngularJs之Scope作用域(详解)
一、什么是scope AngularJS 中,作用域是一个指向应用模型的对象,它是表达式的执行环境。作用域有层次结构,这个层次和相应的 DOM 几乎是一样的。作用域能监控表达式和传递事件。 在 HTML 代码中,一旦一个 ng-app 指令被定义,那么一个作用域就产生了,由 ng-app 所生成的作用域比较特殊,它是一个根作用域($rootScope),它是其他所有$Scope 的原创 2017-05-10 13:59:45 · 1006 阅读 · 0 评论 -
模拟ExtJS底层继承(原理)
小博主在这里就说到这些了,希望大家多多交流,互相进步。。。原创 2017-04-30 17:25:09 · 463 阅读 · 1 评论 -
javascript通常建立接口的三种方式(彻底的明白了)
这篇文章叙述了javascript通常用的创建接口的方式,注释描述、属性检测,鸭式辩型,分别叙述了其中的优缺点,其中鸭式辩型最完美的实现了。。。原创 2017-05-01 11:41:40 · 7530 阅读 · 0 评论 -
javascript常用的一些开发模式(常用)
我在这里列举了三种最常用的开发模式,大家根据自己的爱好,任选一种吧。。原创 2017-04-28 15:54:32 · 362 阅读 · 0 评论 -
ECMA5中的Object.defineProperty()方法
ECMA5中的Object.defineProperty()方法,看了这遍博客,大家就会清楚这个方法的用处了。。。。原创 2017-04-28 14:40:10 · 599 阅读 · 0 评论 -
Angularjs中ng-select和ng-options的用法详解
最近由于项目需要,学了一段时间的angularjs,发现还是比较容易上手的,里面有很多地方,的确震撼了自己。这里就简单的介绍一下angularjs中ng-select和ng-options的用法。一、ng-selectng-select用来将数据同HTML的标签进行绑定。这个指令可以和ng-model以及ng-options指令一起使用,构建精细且表现良好的动态表单。ng-opti原创 2017-05-10 17:22:17 · 2542 阅读 · 0 评论 -
详细介绍javascript中的单体模式singleton(全面)
一、单体模式描述 1、单体模式是javascript中最基本但又最有用的模式之一,他可能比其他任何模式都常用。2、这种模式提供了一种将代码组织为一个逻辑单元的手段,这个逻辑单元中的代码可以通过单一的变量进行访问。通过确保单体对象只存在一份实例,你就可以确信自己 的所有代码使用的都是同样的全局资源。二、单体模式分类1、简单单体// 1、简单单体代码原创 2017-05-02 14:59:33 · 592 阅读 · 0 评论 -
AngularJS中的一次性数据绑定 (bindonce)
一、理解双向数据绑定和监听器为了实现双向数据绑定,AngularJS使用了$watch API来观察期作用域中的模型变化。具体的作用域取决于你的代码如何编写。如果你没有创建一个自作用域,就是说没有使用ngController指令在你的DOM和你的控制器代码之间创建一个关联,你可能处理的是跟作用域$rootScope,这个作用域由ngApp自动创建,并且是应用中所有作用域的父作用域,当然原创 2017-05-11 14:55:06 · 1057 阅读 · 0 评论 -
javascript中工厂方法模式祥解(Factory method pattern)
什么时候使用工厂模式以下几种情景下工厂模式特别有用:对象的构建十分复杂需要依赖具体环境创建不同实例处理大量具有相同属性的小对象什么时候不该用工厂模式不滥用运用工厂模式,有时候仅仅只是给代码增加了不必要的复杂度,同时使得测试难以运行下去。原创 2017-05-04 13:49:37 · 500 阅读 · 0 评论 -
angular 自定义指令 Directive(详解)
在angular中,Directive,自定义指令的学习,可以更好的理解angular指令的原理,当angular的指令不能满足你的需求的时候,嘿嘿,你就可以来看看这篇文章,自定义自己的指令,可以满足你的各种需求的指令。 本篇文章的参考来自 AngularJS权威指南 , 文章中主要介绍指令定义的选项配置 废话不多说,下面就直接上代码//angular指令的定义原创 2017-05-15 10:46:58 · 735 阅读 · 0 评论 -
angularJS--多个控制器之间的数据共享
为了在控制器之间共享数据,需要在服务中添加一个用来储存用户名的方法。记住,服务在应用的生命周期内是单例模式的,因此可以将用户名安全地储存在其中。 12-angularjs的多个控制器数据共享 firstData--{{person.name}}原创 2017-05-15 16:26:03 · 457 阅读 · 0 评论 -
javascript中设计模式之桥接模式详解(Bridge design)
一、桥接模式1、桥接模式是一种既能把俩个对象连接在一起,又能避免二者间的强耦合的方法。通过“桥”把彼此联系起来,同时又允许他们各自独立变化2、桥接模式主要作用就是将抽象与其实现隔离开来,以便二者独立话二、桥接实例1、事件监听回调机制比如我们在页面点击一个发送按钮,去提交表单,我们一般就会这样写: 桥接模式 发送 // 前台代码业原创 2017-05-07 08:57:01 · 2027 阅读 · 0 评论 -
如何通俗易懂的解释javascript里面的‘闭包’?
如果你不能向一个六岁的孩子解释清楚,那么其实你自己根本就没弄懂。”好吧,我试着向一个27岁的朋友就是JS闭包(JavaScript closure)却彻底失败了。原创 2017-04-26 09:33:36 · 385 阅读 · 0 评论 -
ECMAScript 5中最常用的数组处理方法
最全面最常用的ECMAScript 5中最常用的数组处理方法 。。。。原创 2017-04-26 17:41:48 · 509 阅读 · 0 评论 -
如何通俗的理解javascript面向对象编程?
这篇文章主要为大家详细介绍了JS面向对象编程,帮助大家更详细的对JS面向对象进行学习,感兴趣的朋友可以参考一下原创 2017-04-26 10:23:01 · 437 阅读 · 0 评论 -
如何理解javascript中的prototype(原型)和原型链?
之前对js中的原型链和原型对象有所了解,每当别人问我什么是原型链和原型对象时,我总是用很官方(其实自己不懂)的解释去描述。有一句话说的好:如果...原创 2017-04-27 14:24:36 · 1683 阅读 · 0 评论 -
如何理解javascript执行环境和作用域链?
执行环境为全局执行环境和局部执行环境,局部执行环境是函数执行过程中创建的。 作用域链是基于执行环境的变量对象的,由所有执行环境的变量对象(对于函数而言是活动对象,因为在函数执行环境中,变量对象是不能直接访问的,此时由活动对象(activation object,缩写为AO)扮演VO(变量对象)的角色。)共同组成。 当代码在一个环境中执行时,会创建变量对象的一个作用域链。作用域链的用途:是保证对执行环境有权访问的所有变量和函数的有序访问。作用域链的前端,始终都是当前执行的代码所在环境的变量对象。原创 2017-04-26 14:33:13 · 583 阅读 · 0 评论 -
最简便的list数据转树形结构方法(递归详细)
后台返回数据是一行一行的,但是前端展示要树形结构数据,所以需要我们自己处理函数了,小编在此献丑了,小写一个简便函数供大家参考,希望反馈一下。返回数据格式 :var list= [{ name: '根目录1', id: 1, parentId: 0 },{ name: '根目录2', id: 2, parentId: 0 },{ name: '目录1-1', id: ...原创 2019-05-31 10:27:54 · 16802 阅读 · 7 评论