Simple is Happiness
Less is more
JavaScript
网站集成百度、Bing必应搜索引擎,在网页中实现站内全文搜索
by ourjs keys 分享 编程技巧 JavaScript 1595209876070

OurJS网站之前一直使用Bing实现站内搜索,基本原理是搜索时添加关键字  site:ourjs.com 即可限定只搜索 ourjs.com 网站内的内容。因此在实现时需要通过JavaScript改变最终的搜索词。

但有用户反应对中文支持不太友好,并且提交 Sitemap 后,百度收录速度明显快于Bing。现在已经换成了百度搜索。

React Hooks入门教程九:在React中集成使用Vue实现数据双向绑定,手动配置Webpack和Babel
by ourjs keys JavaScript 前端 react hooks vue 1594214124726

Vue是非常优秀的能实现双向数据绑定的前端框架,可极大提高开发效率。与在 React 中集成 jquery及原生javascript编写的组件一样。React 中也可集成vue。

这里我们通过一个 React+Vue 实现的登录页面为例,介绍如何将二者结合使用。本教程是React Hooks系统教程中的一部分。

JavaScript和node.js内存泄露的原因和避免方法及Chrome调试工具使用教程
by ourjs keys JavaScript Node.JS 编程技巧 前端 1591319841520

当我们使用“老式”方法编写网页时,通常不太需要关注JavaScript内存管理。

但 SPA(单页应用程序)的兴起促使我们需要关注与内存相关的编码实践。

在本文中,我们将探讨导致JavaScript内存泄漏的编程模式,并说明如何改善内存管理。

node.js性能压力测试入门教程:wrk和loadtest安装使用
by ourjs keys Node.JS JavaScript 1591410375368

loadtest 是支持通过 npm 安装的一个性能测试工具, 支持 windows和linux,在 node.js 的项目中使用非常方便, 全局安装:

npm install -g loadtest

使用: 连续测试下面的服务20秒,保持100个并发

loadtest http://localhost:8054/test -t 20 -c 100
Html5网页中用JavaScript调用本地手机摄像头扫描识别微信二维码、条形码:postMessage跨域https传递扫码结果消息
by ourjs keys JavaScript Html5 Node.JS 1590639140637

 qr-scanner是一个支持HTML5网页扫描条形码、二维码的开源库。

轻量级:〜48.7 kB(〜12.4 kB压缩后)。
性能优内存占用少。
在WebWorker中运行,不阻塞主进程
在彩色QR码上获得性能优
根据我们的基准测试,该项目较jsqrcode提升约2-3倍。 
错误识别率低。
支持扫描网络摄像头的以及扫描图片文件。

JavaScript设置对象属性只读不可修改、不可枚举、不可删除:Object.defineProperty
by ourjs keys JavaScript 前端 1590207306927

使用defineProperty可以定义属性是否可以被枚举、修改和删除, configurable 对象的属性是否可以被删除

var o = { a:1 }
Object.defineProperty(o, 'a', { configurable: false })
delete o.a
console.log(o) // {a: 1}
node.js通过Error.prepareStackTrace获取上层调用函数的文件名地址和行数位置
by ourjs keys Node.JS JavaScript 1587526318956

node.js中可以通过 __dirname 获取当前文件的目录。那么如何在被调用函数中获取调用者的文件地址和函数名以及行数位置?可使用Error.prepareStackTrace来获取StackTrace数组对象,获取调用者文件信息。 

var getCallerPath = function() {
var orig = Error.prepareStackTrace;
Error.prepareStackTrace = function(_, stack) { return stack; };
var err = new Error;
var stack = err.stack;
Error.prepareStackTrace = orig;

// stack[0]为当前函数, stack[1]为调用者,stack[2]为上层调用者
return stack[2].getFileName()
}
JavaScript判断字符串是否为数字类型:Number.isInteger、isNaN、正则表达式比较
by ourjs keys JavaScript 前端 1587257865266

JavaScript中有Number.isInteger可以判断一个字符串是否为整数。不过目前JS没有内置的函数来判断一个数字是否为包含小数的数字,直接用isNaN即可:

function isNumber(val) {
return !isNaN(val);
}
webpack前端项目调试环境安装入门:webpack.config.js禁用UglifyJs只合并JavaScript不压缩混淆代码
by ourjs keys Node.JS JavaScript 前端 1585359029010

webpack是目前比较流行的前端build工具,本质上是一个模块打包器。合并压缩JavaScript,css,图片等。

目前有很多开源项目使用webpack进行打包。

node.js创建aria2代理服务器:使用net.socket转发rpc或http request请求,替换websocket
by ourjs keys Node.JS JavaScript 1585211369965

Aria2 BT下载可通过网页端访问,网页站通过RPC与Aria程序通讯。
Aria2通过websocket来调用aria2的rpc服务,实现状态查询、创建下载任务,这样可以解决ajax的跨域问题。不过这样NAS服务器要新开一个端口,而且旧浏览器并不支持。此时可使用代理服务器。


 近期热门 - 点击最多
  1. 网站集成百度、Bing必应搜索引擎,在网页中实现站内全文搜索
  2. React Hooks入门教程九:在React中集成使用Vue实现数据双向绑定,手动配置Webpack和Babel
  3. node.js性能压力测试入门教程:wrk和loadtest安装使用
  4. JavaScript和node.js内存泄露的原因和避免方法及Chrome调试工具使用教程
  5. Html5网页中用JavaScript调用本地手机摄像头扫描识别微信二维码、条形码:postMessage跨域https传递扫码结果消息
  6. JavaScript设置对象属性只读不可修改、不可枚举、不可删除:Object.defineProperty
  7. CSS教程:图片使用混合模式和颜色叠加filter滤镜,改变PNG图标颜色
  8. CSS教程:如何设置自动显示隐藏scrollbar滚动条,自定义外观样式/宽度,附demo示例大全
  9. node.js通过Error.prepareStackTrace获取上层调用函数的文件名地址和行数位置
  10. JavaScript判断字符串是否为数字类型:Number.isInteger、isNaN、正则表达式比较

  全端社区 - 最新回复
  1. 销氪助力雄达获取有效商机
  2. 微盟微站如何搭建百度小程序
  3. 销氪智能呼叫中心,助销售提升呼叫效率
  4. React Hooks 入门教程一:开发工具选择、安装配置Yarn,开发环境搭建
  5. JavaScript和node.js内存泄露的原因和避免方法及Chrome调试工具使用教程
  6. React Hooks 入门教程四:useReducer使用说明,改变对象中不同参数的值
  7. 微盟微站有什么用
  8. 安奈儿携手微盟智慧零售,开启童装零售新模式
  9. 几款开源的图形化Redis客户端管理软件
  10. 网站集成百度、Bing必应搜索引擎,在网页中实现站内全文搜索

  开源的 OurJS
OurJS开源博客已经迁移到 OnceOA 平台。

  关注我们
扫一扫即可关注我们:
OnceJS

OnceOA