几乎所有计算机语言有都内置随机函数.当然这种随机,人们习惯称为伪随机数发生器,产生的是一个[0,1)之间的一个小数.再通过简单算术运算生成一个符合需求的整数.JS中通用公式通常为parseInt(Math.random()*(max-min+1)+min),max替换为期望的最大值,min替换为期望的最小值 .效果如下图 JS代码如下: <script> var sj; var tpm setTimeout(function endtime(){clearInterval(intervalId…
上一篇博文<浏览器中Javascript单线程分析>中描述了浏览器中Javascript单线程的原理. 在此基础上,这篇文章将主要介绍setTimeout/setInterval是如何模拟异步的,且二者之间又有何区别. 首先我们来分析它们如何模拟异步. 可以根据上篇博文了解到JS引擎内部维护一个队列,用来存放各种回调函数,其中也包括setTimeout/setInterval回调. 下面用代码结合图形的方式来描述异步是如何产生的. 先看例1: <html> <body>…
最近发现日常的工作中,经常因为敲代码而忘记了休息,晚上眼睛特别的累. 并且经常长时间看着显示器,对眼睛一定是不好的,所以今天开发了一个小程序,用于提醒休息. 下面先看看运行效果: 1.程序启动后,后台运行,不显示界面,也没有制作显示托盘图标 2.当时间到达后,屏幕居中显示以下界面,并且开始倒计时 3.倒计时为0时,屏幕熄灭,但其实随便碰一下鼠标或键盘就会点亮显示器了. 4.人手点亮显示器后,显示以下界面,也可以不亮屏的状态下直接输入密码. 5.输入密码并且正确,界面隐藏至后台,并且重新计时. 上…
昨天朋友圈被「请给我一面国旗@微信官方」刷屏,虽然知道是假的,但是从另一个角度来看,弄清楚如何实现更有趣. 1.canvas 这就不得不提到小程序中的 API canvas,H5 中也是有 canvas 的,不过之前也一直没有机会用,这次正好乘机试试水. 晚上回家看了下官方文档,网上搜了一些类似的功能实现,最后写好了一个 demo,基本上是能初步绘制国旗头像了. 当然以后如果想要绘制其他带挂件的头像,只需要更改挂件素材即可,提前预约帮你们定做今年的圣诞帽. 2.代码来了 实现过程主要分为以下几个…
swiper中的重要属性: vertical:属性,控制swiper效果是水平切换滚动,还是垂直切换滚动.如果不设置此属性,默认是水平滚动,如果设置:vertical="true"是垂直滚动. indicator-dots:属性.属性indicator-dots="true"时显示滚动的小点,indicator-dots="false"时不显示滚动的小点. autoplay:属性控制swiper是否自动切换滚动.等于true是自动切换,等于fal…
在开发微信小程序或者微信网页H5的时候,有时我们利用外部组件可能不兼容这两者,需要区分开来,可以在对应的mainjs中配置如下 let platform: try{ if(wx){ platform='minprogram'; } }catch(){ platform='H5' } Vue.prototype.platform = platform 代码解释: 在微信小程序中 wx作为全局变量能够在任何界面中使用,而在chrome中,wx则为undefined,然后给Vue这个构造函数的原型增加…
http://www.cnblogs.com/Wenwang/archive/2012/01/06/2314283.html http://www.cnblogs.com/yangjunhua/archive/2012/04/12/2444106.html 下面的参考:http://evantre.iteye.com/blog/1718777 1.选题缘起 在知乎上瞎逛的时候看到一个自问自答的问题: 知乎上,前端开发领域有哪些值得推荐的问答?,然后在有哪些经典的 Web 前端或者 JavaScr…
实现一个打点计时器,要求1.从 start 到 end(包含 start 和 end),每隔 100 毫秒 console.log 一个数字,每次数字增幅为 12.返回的对象中需要包含一个 cancel 方法,用于停止定时操作3.第一个数需要立即输出 * 使用setTimeout方法 var timer; function count(start, end) { if (start <= end) { console.log(start); start++; timer = setTimeout…
$interval window.setInterval的Angular包装形式.Fn是每次延迟时间后被执行的函数. 间隔函数的返回值是一个承诺.这个承诺将在每个间隔刻度被通知,并且到达规定迭代次数后被取消,如果迭代次数未定义,则无限制的执行.通知的值将是运行的迭代次数.取消一个间隔,调用$intreval.cancel(promise). 备注:当你执行完这项服务后应该把它销毁.特别是当controller或者directive元素被销毁时而$interval未被销毁.你应该考虑到在适当的时候…
前言 说实话,查看电脑的IP,也挺无聊的,但是够简单,所以就从这里开始吧.IP地址在操作系统里就可以直接查看.但是除了IP地址,我们也想通过IP获取地理地址和网络运营商情况.IP地址和地理地址并没有固定的关系,所以我们需要借助网络上的数据库,或者说借助第三方的服务来查询.这里,我们选用IP.CN提供的IP地址查询服务. 基本环境配置 版本:Python3 系统:Windows 相关模块:PyQt5 实现效果图   完整代码 from PyQt5.Qt import ( QApplication,…