![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
前端学习
weixin_43932812
这个作者很懒,什么都没留下…
展开
-
html移动端适配方案总结
html移动端适配方案总结最近学习了移动端的项目顺带着了解了下移动端布局 发现布局适配是个很重要的问题 其中有几个需要注意的点border 1px处理在做div样式设置边框时发现边线总是比1px看起来要粗 发现px其实是个相对单位 取决于屏幕dpr 需要根据dpr进行等比放大然后transform scale()缩小回原来大小才能正确显示通用布局如下border1px(width=1px, color=#ccc, style=solid, radius=0) position relati.原创 2020-12-28 09:36:49 · 290 阅读 · 0 评论 -
js可复用修改轮播图实现
面对对象轮播图1.前端代码 Title原创 2020-11-26 09:36:44 · 117 阅读 · 0 评论 -
学习柯里化后的一些感想
柯里化的作用//柯里化是函数式编程的一部分 实现了部分求值//且符合函数的基本思想 每次传入一个参数返回一个值 柯里化返回的是//一个函数 相当于给后面的参数创建了一个函数环境并在闭包的情况下允许存储调用//在最后真正需要求值时返回到另一个函数进行计算 而另一个函数是可以修改切换的//比如求和求乘积等等 随时替换调用满足不同需求实现代码如下 // function curry(fn){ // var arr=[]; // return function()原创 2020-11-17 15:02:42 · 66 阅读 · 0 评论 -
一道小小的promise面试题
//首先微任务优先 所以settimeout最后执行//1.new promise里同步直接执行 1,0//2.微任务第一层 2,-1,3,6 所有promise.resolver().then()//3.微任务第二层 4,5,7 所有Promise.resolve().then().then()//4.宏任务执行里面的微任务优先所以是9,10,8//结果:1,0,2,-1,3,6,4,5,7,9,10,8new Promise(function (res) {console.log原创 2020-11-04 19:51:35 · 57 阅读 · 0 评论 -
两行代码看懂循环中let和var的区别
let与var异步加载时不同的表现因为循环是一个同步的过程,所以在循环中执行异步过程时定义变量必须得明确作用域来选择let和var通过其他博客学习自己总结了一些分辨方法: let与var在循环中表现的不同(异步打印值) var时 //for(var i=0;i<5;i++){ aaa.addEventListener("click",function(){alert(i);})} => 5,5,5,5,5 let时 //for(let i=0;i&l原创 2020-11-03 15:12:53 · 149 阅读 · 0 评论 -
js高频面试知识点
题型整理学习半个月js之后总结了一些js的比较容易出错的地方 代码如下 1.call apply bind作用与区别 //将猫抓老鼠的功能对象变成狗 改变的是函数中的this指向(函数运行上下文环境) // kitty.catchMouse.call(doggy, 'Mickey', 'Minnie') // kitty.catchMouse.apply(doggy, ['Mickey', 'Minnie']) // const doggyCatchMouse =原创 2020-10-26 20:08:31 · 104 阅读 · 0 评论 -
js实现游戏人物行走及障碍物事件
人物行走事件实现话不多说 直接上代码var hero; const DOWN=Symbol(), LEFT=Symbol(), RIGHT=Symbol(), UP=Symbol(), TIME_STEP=9; var n=0,bool=false,x=32,y=32,state=0,speed=1,time=TIME_STEP; init(); function init() { createMap();原创 2020-10-23 21:07:05 · 809 阅读 · 0 评论 -
js编辑随机小方块
如何点击按钮增删切改随机颜色 随机位置小方块;话不多说 直接上代码 var buttons,prev,clone; init(); function init() { buttons = document.querySelectorAll("button"); buttons.forEach(function (item) { item.onclick = clickHandler; }); } function clickHandler() {原创 2020-10-15 18:46:30 · 100 阅读 · 0 评论 -
js复合型数组与游戏
二维数组的作用二维数组在游戏中广泛应用//可以制作推箱子等游戏 二维数组就像表格a行b列;二维数组制作地图飞机大战等//一般地图使用地图编辑器生成二维数组//计算人物位移最短路径有A*算法; var arr=[ [1,2,3,4,5,6,7,8], [10,11,12,13,14], [21,211,321,123,] ]; console.log(arr[2][3]); //创建二维数组方法 var arr=[原创 2020-10-13 10:35:05 · 363 阅读 · 0 评论 -
js数组之reduce的使用方法
reduce的方法reduce使用场景非常多,使用频率非常高,这里介绍reduce的基本功能与函数重构,同时还是高阶函数完成fliter等功能。//reduce的基础用法//如果没有初始值,第一次遍历时value为数组第0项,item从下标1开始遍历//从第二次开始value就是上一次使用return返回的值//归并;value和item归 然后并//如果有初始值,item从0开始遍历,value开始为初始值//reduce可以完成filter,every等功能;var arr=[2,3原创 2020-10-13 09:13:25 · 142 阅读 · 0 评论 -
javascript必学之数组concat与indexOf
javascript必学之数组concat与indexOfconcat与indexOf方法是js中非常重要的方法 ,接下来是这个方法的实现: //concat将一个或多个以上的数组与原数组拼接成新数组并返回 原数组不变 var arr=[1,2,3]; var arr1=[1,2,3,4,5,6]; var arr2=arr.concat(arr1,arr); var arr2=arr.concat(arr1,1,2,3); console.log(arr原创 2020-10-13 08:58:11 · 116 阅读 · 0 评论 -
数组的各种方法
数组的创建方法//数组创建方法 js弱语言arr里可以任意类型导致效率下降 var arr=[1,2,2,3,4,5,null,"0",6]; console.log(arr["0"]); console.log(arr["1"]); //从0开始的数据顺序,下标,相当于object当中的key,object{key:value} //arr["0"] 下标变量 对应的1为值 也称为元素 var obj={0:1}; console.log(ob原创 2020-10-13 08:31:14 · 69 阅读 · 0 评论