简介gulp是基于Nodejs的自动任务运行器, 她能自动化地完成 javascript/coffee/sass/less/html/image/css 等文件的的测试、检查、合并、压缩、格式化、浏览器自动刷新、部署文件生成,并监听文件在改动后重复指定的这些步骤。 在实现上,她借鉴了Unix操作系统的管道(pipe)思想,前一级的输出,直接变成后一级的输入。主要呢,就是用来帮助我们更快构建。 常用地址gulp官方网址:http://gulpjs.comgulp插件地址:http://gulpjs.co...
之前在的书中看到有关控制任务管理器中CPU占用率的文章。感觉很意思。一直想自己做一次。但我在C语言方面的水平有限。因此不能直接用找到代码实践这个过程。不过最近经常在用javascript,所以就想到用javascript实现一下。结果还不错。代码在下面,只要在桌面上建一个html文件,把代码放进去,用浏览器打开就可以看了。因为我用的机器是双核的,所以效果不太好。希望有高手帮我改进一下这个程序。 代码如下: var SPLIT = 0.01; v...
相信本菜单会让你学习到一些新鲜的JS技巧。 JS仿苹果任务栏菜单 body{margin:0;padding:0} #menu{position:absolute;width:100%;bottom:0;text-align:center;} window.onload = function () { var oMenu = document.getElementById("menu"); var aImg = oMenu.getElementsByTagName("img"); var aWidth = []; var i = 0; for (i = 0; i [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
很多人一提到JS可能就会想到网页,其实JS同样可以拥有主动权,做一些其他语言能做到的事情,甚至可以反过来去主宰浏览器,而不是被浏览器主宰着。 这篇文章将介绍一个建立在WSH平台上,通过JS实现的真正可用的Windows任务管理器。 一:代码及注释 代码如下: /* JS任务管理器 By:X!ao_f Mail:Xiao_f.mail@163.com QQ:120000512 */ //建立对象Shell对象,该对象提供了弹出提示框、运行进程、操作注册表等基本功能。 var shell = WSc...
使用方法: 代码如下:$("#todo_tip").pull_todo_count(); 后台返回值 代码如下:{"todo_count":3} js文件代码如下:(function ($) { var element; $.fn.pull_todo_count = function () { var a = $(0个审核待申请); a.attr("href","/process/todo_list"); a.appendTo($(this)); $(this).hide(); element = $(this); timerRequestData(); }; function timerRequestData() { ...
如何自定义Grunt任务 有时我们需要写一些自己的grunt任务,下面是一个具体例子 一、准备 1. 新建一个目录g12. 新建package.json,放入g13. 新建Gruntfile.js,放入g1 package.json代码如下: { "name": "g1", "version": "0.1.0", "author": "@snandy", "homepage": "http://www.g1.com", "devDependencies": { "grunt": "~0.4.0" }} 4. cd进入g1,npm install安装grunt包 这整个目录结构如下Gruntfile.js...
在 Node.js 中,我使用 node-schedule 来执行定时任务。Cron-style 的时间格式对于初学者不太直观,所以一般使用这种方式:比如官方示例中的每个小时的 42 分执行任务代码如下: var schedule = require(node-schedule); var rule = new schedule.RecurrenceRule(); rule.minute = 42; var j = schedule.scheduleJob(rule, function(){ console.log(The answer to life, the universe, and everything!); });那么问题来了,如何每...
在Javascript的开发过程中,经常会遇到一些重复性的任务,比如合并文件、压缩代码、检查语法错误、将Sass代码转成CSS代码等等。通 常,我们需要使用不同的工具,来完成不同的任务,既重复劳动又非常耗时。Grunt就是为了解决这个问题而发明的工具,可以帮助我们自动管理和运行各种任 务。 简单说,Grunt是一个自动任务运行器,会按照预先设定的顺序自动运行一系列的任务。这可以简化工作流程,减轻重复性工作带来的负担。## 安装Gru...
本文实例讲述了JS实现仿苹果底部任务栏菜单效果代码。分享给大家供大家参考。具体如下: 这款仿苹果电脑的底部任务栏菜单,是纯JavaScript实现的菜单特效,鼠标放上有响应效果,菜单图标会变大,而且动画效果非常流畅,以前发过这种效果,但是是使用了jQuery实现的,今天这个没有jQuery插件哦。 运行效果截图如下:在线演示地址如下: http://demo.jb51.net/js/2015/js-f-apple-buttom-nav-menu-style-codes/ 具体代码如下:仿苹果...
即使忘了 JavaScript 的一切知识,也不会忘记:它是阻塞的。 想象一下,你的浏览器里住着一个魔法小精灵,负责浏览器的正常运转。不论渲染 HTML,响应菜单命令,屏幕渲染,处理鼠标点击,或者执行 JavaScript 函数,所有事情都归一个小精灵处理。它哪忙得过来,一次只能处理一件事情。如果同时丢给它一堆任务,它会列一个长长的待办列表,按顺序完成它们。 人们常常希望初始化组件和事件处理的 JavaScript 可以尽快被执行。可是,有...
Node.js 单线程与多进程大家都知道 Node.js 性能很高,是以异步事件驱动、非阻塞 I/O 而被广泛使用。但缺点也很明显,由于 Node.js 是单线程程序,如果长时间运算,会导致 CPU 不能及时释放,所以并不适合 CPU 密集型应用。 当然,也不是没有办法解决这个问题。虽然 Node.js 不支持多线程,但是可创建多子进程来执行任务。 Node.js 提供了 child_process 和 cluster 两个模块可用于创建多子进程 下面我们就分别使用单线程和多进程来...
自动构建javascript有不少好工具。不过其实很少有人知道,npm run命令就能很好地完成这一任务,配置起来也很简单。James Halliday在博客上分享了使用npm run自动化任务的一些经验: script npm 会在项目的 package.json 文件中寻找 scripts 区域,其中包括npm test和npm start等命令。 其实npm test和npm start是npm run test和npm run start的简写。事实上,你可以使用npm run来运行scripts里的任何条目。 使用npm run的方便之处在...
前言最近需要做一个浏览器的, 支持大体积文件上传且要支持断点续传的上传组件, 本来以为很容易的事情, 结果碰到了一个有意思的问题:循环执行连续的异步任务, 且后一个任务需要等待前一个任务的执行状态这么说可能有点空泛, 以我做的组件举例:这个组件本意是为了上传大体积视频, 和支持断点续传, 因为动辄几个G的视频不可能直接把文件读进内存, 只能分片发送(考虑到实际网络状态, 每次发送大小定在了4MB), 而且这么做也符合断点续传...
今天在做一个小任务,需要调用阿里云的图像识别接口,对 62662 张照片进行场景识别,并将结果写到本地的 csv 文件中。 因为任务很简单,没想很多就开始码。自从有了 async/await 之后,已经很久不写 callback 了,所以上手就写成这样: 本文所有代码均有简化,只保留关键过程 async fetchSceneTags(imagePath) {try {const result = await callAliyunAPI(imagePath);return result.errno === 0 ? result.tags : [];} catch(error) ...
本文实例为大家分享了js使用generator函数同步执行ajax任务的具体代码,供大家参考,具体内容如下function request(url, callback) {fetch(url, {mode: cors, credentials: include, headers: new Headers({ X-Requested-With: XMLHttpRequest })}).then(response => response.text()).then(text => {console.log(url);console.log(text);callback(text);}).catch((e) => console.log(e)); }var iterator = null; function getData...