首页> javascript

js实现本地图片预览

分类:前端开发2022-11-10阅读:(425)标签:javascript
在上传图片的时候,通常想在本地先预览一下,看看选择的图片有没有问题,没问题再上传到服务器,避免服务器上产生冗余的文件,浪费资源。本地图片预览,可以通过window.URL.createObjectURL(file) 或者 FileReader来实现 ,随着浏览器的不断升级及标准更新,各主流浏览器也都支持这两个API了。URL.createObjectURL()URL.createObject...

react额外的Hooks: useMemo和useCallback

分类:前端开发2022-09-02阅读:(601)标签:javascript, react
平时在用Hooks写react组件时,最常用的就是 useSate, useEffect, useRef。还有一些不常用的Hooks也需要熟悉,在优化提高渲染效率的时候有用。useMemoconst memoizedValue = useMemo(() => computeExpensiveValue(a, b), [a, b]);返回一个 memoized 值。把“创建”函数和依赖项...

js位运算符<<、>>、>>>

分类:前端开发2020-04-21阅读:(1272)标签:javascript
JavaScript 使用 32 位按位运算数。JavaScript 将数字存储为 64 位浮点数,但所有按位运算都以 32 位二进制数执行。在执行位运算之前,JavaScript 将数字转换为 32 位有符号整数。执行按位操作后,结果将转换回 64 位 JavaScript 数。<< 零填充左位移 通过从右推入零向左位移,并使最左边的位脱落。 >> ...

js深拷贝

分类:前端开发2018-12-21阅读:(1274)标签:javascript
javascript中数据类型有8种,其中有7种原始类型:Boolean,Null,Undefined,Number,BigInt,String,Symbol和 Object。我们通常也说基础类型和引用类型。内存中,基础数据类型在栈中直接存储值,引用类型则是在堆中存储,然后把其在堆中的地址存储在栈里。js浅拷贝,只是拷贝栈中的数据,js深拷贝,就是要完全拷贝,包括堆里数据。举例说明:let ...

新闻单行间歇滚动效果

分类:前端开发2018-12-11阅读:(1305)标签:javascript
现在很多网页在首页都会放一个头条新闻的地方,有一两条新闻间歇滚动。网上方法有很多,这里记录两种自己用的方法。用到的有setTimeout, requestAnimationFrame。方法一:通过srollTop来实现:e.g.<style type="text/css"> .box{ width: 100%; height: 40px; ...

Canvas绘制刮刮乐效果

分类:前端开发2018-05-08阅读:(2062)标签:javascript, html5, canvas
最近朋友做html5营销页挺多的,想着一直写js,html5的东西也好久没写过了。今天就来折腾一下,看看canvas的东西,然后想到刮刮乐效果。这个以前同事也分享过,不过时间太久,也忘记了。熟悉PS的话,就很清楚图层的概念。刮刮乐就是两个图层,奖项图层在下面,上面盖一层灰色的遮住。挂掉灰色图层,镂空显示出下面的奖项图层。根据html的canvas手册实验了几下,发现不能清除画的某个图案,会直...

composition事件控制表单输入字数的长度

分类:前端开发2017-06-06阅读:(3488)标签:javascript
我们在做表单内容输入的时候,常常会有一些字数长度限制,超过多少个字后不能再输入,在这种需求下,我们通常用input来判断字符串的length,然后做value的截取和重新赋值,但这样会有一个问题,就是当我们输入汉字的时候,每一个键盘按键都会触发input。比如表单里还可以输入两个字符,但我输入中文用的是拼音,全拼,要完成最后两个汉字的输入,需要按很多个字母键,但每一键都会因为input事件而...

高性能javascript各章节小结

分类:前端开发2016-11-05阅读:(2303)标签:javascript
1,加载和执行Javascript在浏览器中的性能,可以认为是开发者所面临的最严重的可用性问题。多数浏览器使用单一进程来处理用户界面UI刷新和Javascript脚本执行,so,同一时刻只能做一件事。JS执行过程耗时越久,浏览器等待响应的时间就越长。管理浏览器中的JS代码是个棘手的问题,每次遇到<script>标签,页面都必须停下来等待代码下载并执行,然后继续处理其他部分。尽管如...

javascript的Array.sort排序IE8和chrome不一致的问题

分类:前端开发2016-09-08阅读:(3044)标签:javascript
javascript中Array.sort方法对数组的元素做原地的排序(引用),并返回这个数组。 sort 可能不是稳定的。默认按照字符串的Unicode码位点(code point)排序。如果指明了 compareFunction ,那么数组会按照调用该函数的返回值排序。记 a 和 b 是两个将要被比较的元素:如果 compareFunction(a, b) 小于 0 ,那么 a 会被排列...

前端项目一期code review问题总结

分类:前端开发,笔记碎片2016-07-03阅读:(2052)标签:javascript, jquery, 经验
这次项目开发第一期结束,团队进行了code review,代码写得比较low,总结leader和爝爷的点评。需求分析要搞清楚,理清所有大小点需求,才能更清楚的去划分模块。团队中通用的一些组件或插件,最好使用统一的。这次我自己写了几个组件和jquery插件,都是自己用的,日期格式化的插件本来有公用的,但我使用了自己写的,这不利于项目的后期维护,以及增加了项目代码体积。把节点保存到变量里,jqu...
前端开发