自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 js数组如何每隔几个元素添加一个元素

js数组如何每隔几个元素添加一个元素 var typeData = []; for(var i=0,len=types.length;i<len;i+=3){ typeData.push(types.slice(i,i+3)); } typeData.forEach(item => { ...

2018-11-14 12:07:27 6940 3

原创 如何根据对象的value值对json对象进行排序

如何根据对象的value值对json对象进行排序这是在工作中遇到的一个问题,当时查了好多,发现答案都是答非所问,自己就写了一下function sortObj(obj) { const keys = Object.keys(obj).sort(function(a, b) { return obj[a] - obj[b] }) var newObj = {} ...

2018-11-14 12:00:56 4248

原创 js实现数组去重的四种方法

1. var a=[1,2,3,4,5,6,2,5,8,7]; var arr = []; for (var i = 0; i < a.length; i++) { if (arr.indexOf(a[i]) === -1) { arr.push(a[i]); }

2018-04-12 16:27:44 672

原创 实现一个打点计时器

今天去现场面试,一公司要求现场写代码,要求实现一个倒计时(60S),当时想到了要用闭包,当时是这样写的:for(var i=60;i>=0;i--) { (function(j) { setTimeout(function() { console.log(j) }, 1000) })(i)}当时没想到60个数一起输出了出来,没有倒计时的效果,后来将时间改为 (

2018-03-19 17:34:17 418

原创 js面试常问问题之实现log方法

1.定义log,然后它可以代理console.log的方法function log(msg){ console.log(msg);}2.传入多个参数,强调传入参数的个数是不定的function log(){ console.log.apply(console,arguments);}这里强调一下console是一个对象。 3. 添加一个”hello”的前辍function log(){

2018-03-04 17:07:17 1734

原创 js怎么获得形参数量和实参数量

在js中函数本身也是对象。 1.获取形参数量。 var test = function(a,b,c,d) { console.log(arguments.length);//2 } test(1,2); console.log(test.length);//4

2017-12-02 19:04:55 2313

原创 JSON字符串和对象相互转换

1.JSON.parse()和JSON.stringify() var data = { "id":111, "name":"aaa" } var dataString = '{"id":111,"name":"aaa"}' ; console.log(JSON.parse(dataString)); console.log(

2017-12-02 14:27:10 242

原创 用js给一个数组重新洗牌

定义了一个洗牌函数function getRandomInt(max, min) { return Math.floor(Math.random() * (max - min + 1) + min)}//Math.random()返回0-1之间的小数export function shuffle(arr) { for (let i = 0; i < arr.length; i++) {

2017-11-27 15:22:39 762

原创 用js实现输入一个链表,输出该链表中倒数第k个结点。

function a(head,k) { let array = []; if (head === null) { return false; } let node = head; while(node != null) { array.push(node); node = node.next(); } return array[array.length - k

2017-11-26 22:26:16 1587

原创 js普通事件和监听事件的区别

1.添加监听事件可以对动态生成的元素也生效。而普通事件就不行了。 2.普通事件只能执行一个回调函数,监听事件可以添加n个。

2017-11-26 21:57:21 1742

原创 stick footer布局

将footer固定到底部。文章内容不足满屏时 footer在底部,超过满屏时footer在内容末尾。<div class="wrap"> <div class="content"> <div class="content-main"></div> </div> <div class="foot"></div></div>.wrap{position:fixed;left:

2017-10-15 12:02:02 398 1

原创 一像素边框

.slide { position:relative;}.slide :before{ position:absolute; content:""; width:100%; height:1px; border:1px solid #EEEEEE; transform:scaleY(0.5);}2.下面的一像素边框.slide { position:relative;}.slide

2017-10-09 22:26:55 226

原创 Hogan模板引擎的使用

1.首先引用模板,定义一个函数来引用模板var renderHtml=function(template,data){ var hogan=require('hogan.js'); var template=hogan.compile('template'); var result=template.render(data); return result; }2.使用v

2017-09-11 21:25:15 496

原创 css中的小技巧

1.怎么使一个绝对定位按钮居中呢,最先想到是:.btn{position:absolute;left:0 ;top:0 ;right:0 ;bottom:0 ;margin:0 auto;}这样就居中了,但是此时没有给button设置宽度,还是不会居中的,因为 left : 0 ,right : 0 默认会充满一整行,所以要给button设置宽度才可以居中,另外把left:50% ,m

2017-09-02 17:02:00 262

原创 处理冒泡的两种方式

在js中,子级可能通过冒泡影响父级<div id="div1"> <div id="div2"></div> </div>.....JS代码window.onload=function(){var div1=document.getElementById("div1");div1.onmouseover=function(){document.title+="1";}di

2017-08-02 16:15:55 541

原创 自定义组件开发

1.自定义组件需要将配置参数,方法,事件,三者分离。2.原生JS实现自定义事件function bindEvent(obj,events,fn){ if(obj.addEventListenter){ obj.addEventListenter(events,fn,false); } else{ obj.attachEvent("on"+ev

2017-08-01 21:11:37 300

原创 面向对象中的原型链

1.hasOwnProperty:看是不是对象自身的属性. 2.constructor:查看对象的构造函数 每个原型都会自动添加constructor属性; For in的时候有些属性是找不到的; 避免修改constructor属性。 3

2017-07-25 14:41:30 323

原创 js面向对象

关于js面向对象的几点想分享一下 首先什么是对象呢? 对象是属性+方法1.创造对象的几种方式<1>工厂模式function createPerson(name){ var obj=new Object(); obj.name=name; obj.showname=function(){ alert(this.name); } return obj;

2017-07-21 17:07:24 321

原创 关于js

最近做了一个东西,又深入理解了js,感觉每看一遍js,都有不同的理解,现在我想分享一些我的理解。 原来本来想用js面向对象方法写的,写了一个选项卡,用了构造函数加原型的方式。 在写的过程中遇到了很多问题,比如闭包,变量传不到匿名函数里面,我知道的解决方法有两种:第一种,设置一个全局变量,可以顺利传参。 第二种,可以看一下,执行事件的元素和你要用的元素有什么关系,这个时候可以用原生写,

2017-07-20 11:14:46 239

原创 web storage 存图片

function setImg(key,src){           var img = document.createElement('img');           //当图片加载完成的时候触发回调函数           img.addEventListener("load",function(){               var imgCanvas = document.creat

2017-05-30 18:48:50 334

原创 Data URI Base 64 编码转为图片

String data=name.Substring(name.IndexOf("base64,")+7);//截取Base64编码String top=name.Substring(0,name.IndexOf("base64,"));//截取Base64编码头byte[] base64=Convert.FromBase64String(data);MemoryStream memStr

2017-05-30 10:45:31 1334

转载 viewport深入理解

移动前端开发之viewport的深入理解在移动设备上进行网页的重构或开发,首先得搞明白的就是移动设备上的viewport了,只有明白了viewport的概念以及弄清楚了跟viewport有关的meta标签的使用,才能更好地让我们的网页适配或响应各种不同分辨率的移动设备。一、viewport的概念通俗的讲,移动设备上的viewport就是设备的屏幕上能用来显示我们的网页的那一块区域,

2017-05-17 11:48:34 270

转载 js跨域

js中几种实用的跨域方法原理详解这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。下表给出了相对http://store.company.com/dir/page.html同源检测的结果:要解决跨域的问题,我们可以

2017-05-17 11:44:48 450

原创 单行文本溢出与多行文本溢出

当行文本溢出与多行文本溢出 1.单行文本溢出 .inaline{ overflow:hidden; white-space:nowarp;//文本不会换行,文本会在在同一行上继续,直到遇到 标签为止。 text-overflow:ellipsis;//带省略号 } 2.多行文本溢出 .intwoline{ overflow:

2017-05-16 20:19:37 399

原创 css布局不定宽高的水平垂直居中

1.  css{      position:absolut;       left:50%;       top:50%;       transform:translate(-50%,-50%);}2.Flexbox弹性盒子模型 .parent{       justify-content:center;     align-items:center;

2017-05-16 16:38:38 325

原创 三栏布局的两边定宽100px,中间自适应

1.绝对定位,将左边定位,右边定位,将中间margin-left和margin-right设为100px缺点是当浏览器缩小时,两边可能会重叠。2.float:left,float:right;3.margin负值法:margin负值法:左右两栏均左浮动,左右两栏采用负的margin值。margin-left:-100%;margin-right:-100px;中间栏被宽度为100%的浮

2017-03-19 23:05:05 782

原创 清除浮动的几种方式

1.可以给父级元素设一个高度,如果高度是固定的,这种方法代码简单,但是要给父级元素设成一个固定的高度。2.可以在浮动的下面加一个空的元素:clear both;3.给父元素定义一个伪类:after或:before clear:both,display:block;zoom:1/*为了兼容ie zoom:1清除浮动,是IE浏览器的专有属性,Firefox等其它浏览器不支持。它可以设置或检索对

2017-03-19 22:02:34 279

原创 img的alt和title区别

今天看了一个问题是我以前没注意到的img的alt和title的区别1.alt是图片没有加载出来的替换文本但是ie是个特别的浏览器,它会把alt当做鼠标提示文本。2.title是鼠标放上去图片

2017-03-19 21:34:19 632

原创 隐藏的padding

ol/li元素内置padding-left,但是单位是px,而不是em.​所有浏览器input/textarea 输入框内置padding.所有浏览器button 按钮内置padding.部分浏览器select下拉内置padding,如FireFox,IE8+.所有浏览器radio/checkbox单复选框内无内置padding.button按钮元素padd

2016-12-02 12:24:55 429

原创 后缀表达式的计算

为了解释后缀表达式的好处,我们先来看看,计算机如何应用后缀表达式计算出最终的结果20的。后缀表达式:9 3 1-3*+ 10 2/+规则:从左到右遍历表达式的每个数字和符号,遇到是数字就进栈,遇到是符号,就将处于栈顶两个数字出栈,进行运算,运算结果进栈,一直到最终获得结果。下面是详细的步骤:1. 初始化一个空栈。此桟用来对要运算的数字进出使用

2016-12-02 12:23:13 420

原创 JavaScript脚本放在哪里

在HTML body部分中的JavaScripts会在页面加载的时候被执行。  在HTML head部分中的JavaScripts会在被调用的时候才执行。    ——————————————————————————  JavaScript应放在哪里  页面中的JavaScripts会在浏览器加载页面的时候被立即执行,我们并不希望总是这样,有时候我们想让一段脚本在页面加载的时候执行,而有时候我们想在

2016-12-02 11:18:30 380

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除