- 如何打造属于自己的Javascript武器库,来封装 11-30
- 即使你关闭浏览器也阻止不了这个JavaScript加 11-30
- 《小白H5成长之路25》原来jQuery的ajax加 11-30
- 程序员可能不知道的 14 个 JS 调试技巧 11-30
- javascript小知识--window对象应用 11-30
- 经典的网页5s跳转 11-30
- 月薪30K的项目总监分享的JS刷新当前页面的几种方法 11-30
- 你的第一个 Kotlin 版的 Firefox 插件 11-30
- js高級-js与json 11-30
- jQuery中使用on注册事件带来的好处 11-30
如何打造属于自己的Javascript武器库,来封装这些经典的方法吧
发布者: superzhang | 发布时间:2017-11-30前言
代码写的久了,就会发现很多时候都是在写一些重复的东西,这个时候就应该要考虑到提高工作效率了,比如对常用方法的封装,例如日期格式化,浏览器类型判断等。
今天这篇文章我们就来看看如何封装常用的Javascript方法,打造出属于自己的一套Javascript武器库吧。封装的代码为了不依赖于其他库,都采用原生的Javascript编写。
文中的代码有些比较长,理解的不是很清楚的,可以直接去github上看。
https://github.com/zhouxiongking/article-pages/blob/master/articles/jsCapsulation/capsulation1.js
Javascript
数组-判断相等在某些场景下,我们需要判断两个数组是否相等。主要思想如下:
首先判断传入的参数是否为数组,如果不为数组,则返回false;
即使你关闭浏览器也阻止不了这个JavaScript加密程序偷偷挖矿
发布者: superzhang | 发布时间:2017-11-30用户可以运行任务管理器来发现任何剩余的运行浏览器进程并终止它们。
基于JavaScript的浏览器内加密货币矿工现在借用恶意的在线广告技术,在访问一个网站之后偷偷地从个人电脑获取运算能力挖矿。
大多数使用Monero-mining Coinhive服务的基于浏览器的矿工只需关闭浏览器即可停止浏览器,从而阻止他们占用CPU。
然而,安全公司Malwarebytes发现了一个新的案例,即使在浏览器关闭之后,该页面仍将继续挖掘。
该技术依赖于一个微小的“弹出式”窗口,有时用于加载隐藏的广告。对于额外的覆盖,该窗口被设计为坐在Windows任务栏后面,使其很难找到。
Malwarebytes的研究人员杰罗姆(Jerome)写道: “诀窍在于,尽管可见的浏览器窗口是关闭的,但仍有一个隐藏的窗口保持打开状态,这是由于弹出窗口的大小适合在任务栏下方并隐藏在时钟后面。
浏览器内的密码器越来越受欢迎,部分原因是广告拦截器的崛起。
《小白H5成长之路25》原来jQuery的ajax加载外部页面原理很简单
发布者: superzhang | 发布时间:2017-11-30“嘿,小白!你能把昨天收集的用户反馈表给我么?”
“可以啊,稍等,我等下给你发过去!”
不一会,小白把用户反馈表给老朱拿了过去,老朱拿到反馈表以后把表放到了桌子上,对小白说:“小白,反馈表的事情我一会儿再处理,我再给你说个知识点吧!刚刚我问你要反馈表,你把表给我后我再处理的整个过程就是JavaScript的ajax请求的过程。”
老朱继续说道:“都知道ajax是一个异步请求,很多人一听到异步请求就头疼,其实异步请求原理很简单:我问你要东西,你给我东西。”
小白问道:“能再说详细点么?还是有点不明白。”
“要东西的时候有这么几种情况:问谁要、明着要还是悄悄要、要什么、你以什么方式给我、给我以后我怎么处理、我问你要东西你没听见怎么办?”
小白说道:“嗯,是这么回事!”
“回到JavaScript的ajax请求上面!我们有一个html的静态页面,页面中需要显示后台数据库中的一个用户的信息。现在有一个
程序员可能不知道的 14 个 JS 调试技巧
发布者: superzhang | 发布时间:2017-11-30了解你的工具可以极大的帮助你完成任务。尽管 JavaScript 的调试非常麻烦,但在掌握了技巧 (tricks) 的情况下,你依然可以用尽量少的的时间解决这些错误 (errors) 和问题 (bugs) 。
我们会列出14个你可能不知道的调试技巧, 但是一旦知道了,你就会迫不及待的想在下次需要调试 JavaScript 代码的时候使用它们!
现在开始。
虽然许多技巧也可以用在别的检查工具上,但大部分的技巧是用在 Chrome Inspector 和 Firefox 上的。
1. ‘debugger;’
‘debugger’ 是 console.log 之外我最喜欢的调试工具,简单暴力。只要把它写到代码里,Chrome 运行的时候就会自动自动停在那。你甚至可以用条件语句把它包裹起来,这样就可以在需要的时候才执行它。
if (thisThing) {
debugger;
}
2. 把 objects 输出成表格
有时候你可能有一堆对象需要查看。你可以用 console.log 把每一个对象都输出出来,你也可以用 console.table 语句把它们直接输出为一个表格!
var animals = [
{ animal: 'Horse'
javascript小知识--window对象应用
发布者: superzhang | 发布时间:2017-11-30<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
javascript组成部分:
EMCAScript(基本语法)
BOM( Browser Object MOdel) 浏览器对象模型.
浏览器对象模型中把浏览器 的各个部分都是用了一个对象进行描述,如果我们要
操作浏览器的一些属性,我就可以通过浏览器对象模型 的对象进行操作。
window 代表了一个新开的窗口
location 代表了地址栏对象。
screen 代表了整个屏幕的对象
window对象常用的方法:
open() 打开一个新的窗口。
resizeTo() 将窗口的大小更改为指定的宽度和高度值。
moveBy() 相对
经典的网页5s跳转
发布者: superzhang | 发布时间:2017-11-30很多网站一进入主页等待几秒就会有广告弹出,或者从广告页面几秒倒计时后跳转到其他主页,实现该类型效果也非常简单,下面就俩说说原理和代码讲解!
案例设置了5秒倒计时再操作
实现代码
html:
javascript:
月薪30K的项目总监分享的JS刷新当前页面的几种方法
发布者: superzhang | 发布时间:2017-11-301、reload 方法,该方法强迫浏览器刷新当前页面。
语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。true, 则以GET方式,从服务端取最新的页面,相当于客户端点击 F5("刷新")
分享之前我还是要推荐下我自己的前端学习群:655962461,不管你是小白还是大牛,小编我都挺欢迎,不定期分享干货,包括我自己整理的一份2017最新的前端资料和零基础入门教程,送给大家,欢迎初学和进阶中的小伙伴
2、replace 方法
该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL。
语法: location.replace(URL) 在实际应用的时候,重新刷新页面的时候,我们通常使用: location.reload() 或者是 history.g
你的第一个 Kotlin 版的 Firefox 插件
发布者: superzhang | 发布时间:2017-11-30Kotlin 是我最喜欢的编程语言,在 Android 或 Server 等平台上,Java 代码最终会被编译成 Java 字节码,所以被这些平台快速的采用。但是,由于 Kotlin 也支持编译为 Javascript ,因此该语言也开始在 Web 生态系统中受到关注。
尽管已经有一些使用 Kotlin 编写的 Web 应用程序已经发布上线了,但是编写浏览器扩展插件的程序似乎一直被忽略。这就是为什么在这篇文章中,我们将探讨使用 Kotlin JS 编写 Firefox 的简单扩展插件的过程。
该扩展程序基于 Mozilla 官方的的 第一个插件Demo,并将简单地添加到 kotlinlang.org 网站的红色边框。
环境要求
为了测试我们的 Firefox 扩展插件,我们将使用 Mozilla 的 web-ext工具。要获得它,您需要先安装 node.js ,然后在终端中运行以下命令:
npm install --global web
js高級-js与json
发布者: superzhang | 发布时间:2017-11-30今天我么来介绍下js对json的处理。
一、JSON格式的内容
Json可以包含三种类型的值:
1、简单值 2、对象 3、数组
简单值就是例如数字 : 5 字符串 : "aaa"(json中的字符串必须是双引号) 这样的(布尔值和null也是有效的)。
对象就是形如:
var person={
name : "小明",
age: 20
}
这样的,当然,也可以嵌套对象进入。
数组:数组其实就是将简单值或者对象以数组的形式声明的方式。
以上json格式部分不做具体介绍,不懂的小伙伴可以自行百度或看书,当然也可以留言或者私信我。。。
我们今天要说的是javascript对json的序列化与解析。
(1)、序列化功能
js提供了JSON.stringify()方法来把一个js对象序列化为一个JSON字符串,然后将他保存在jsonText中。
jQuery中使用on注册事件带来的好处
发布者: superzhang | 发布时间:2017-11-30头条不支持markdown语法,我原格式复制的,想看清楚的就复制到编辑器上看吧
自从博客被黑了之后,就基本没碰它。最近一直在实习,跟着前辈们写了写项目,遇见了很多问题。虽然不是什么大的问题,但觉得还是需要记录下来的好。
刚来公司看公司的做的项目都比较老旧 ,在Vue、Angular、react大行其道的今天,我们公司还在用Underscore.js。当然了,我并没有觉得它不好,只是觉得它不合适,准确的说,是不太适合我而已,还好最近听说前辈们准备要把以前的项目用vue翻写一遍,想想还是不错的。
这下面是我一个月来遇见的问题,今天先说说jQuery的on事件。
遇见的问题
>当你需要从后台获取数据动态添加到文档中去,有需要给动态添加的元素注册相应的事件的时候,请使用$("某个元素").on()来完成。
jQuery从1.9版本开始注册事件一般有三种形式,分别为
- **$(
