javascript
文章平均质量分 84
whackw
测试相关,尽量做到比开发与运维还要牛
展开
-
cookie、localStorage、sessionStorage的理解
1、cookie在客户端记录信息确定用户身份。由于HTTP是一种无状态的协议,服务器单从网络连接上无从知道客户身份。就给客户端们颁发一个通行证,每人一个,无论谁访问都必须携带自己通行证。这样服务器就能从通行证上确认客户身份了。这就是Cookie的工作原理。客户端发送一个http请求到服务器端服务器端发送一个http响应到客户端,其中包含Set-Cookie头部 客户端发送一转载 2017-08-17 16:30:38 · 494 阅读 · 0 评论 -
ECMAScript 6 入门
http://es6.ruanyifeng.com/#docs转载 2017-08-15 19:20:36 · 396 阅读 · 0 评论 -
let 和 const 命令
let 命令基本用法ES6 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。{ let a = 10; var b = 1;}a // ReferenceError: a is not defined.b // 1上面代码在代码块之中,分别用let和var声明了两个变量。然后在代码块之外调用这两个变量,转载 2017-08-15 19:18:12 · 286 阅读 · 0 评论 -
js格式化json/xml格式
//格式化代码函数,已经用原生方式写好了不需要改动,直接引用就好 var formatJson = function (json, options) { var reg = null, formatted = '', pad = 0, PADDING = '转载 2017-07-17 15:01:43 · 1086 阅读 · 0 评论 -
URL.createObjectURL和URL.revokeObjectURL
一.URL.createObjectURL URL.createObjectURL()方法会根据传入的参数创建一个指向该参数对象的URL. 这个URL的生命仅存在于它被创建的这个文档里. 新的对象URL指向执行的File对象或者是Blob对象. 语法: objectURL = URL.createObjectURL(blob || file);转载 2017-07-04 14:31:13 · 647 阅读 · 0 评论 -
JS中的call、apply、bind方法
JS中的call、apply、bind方法一、call()和apply()方法1.方法定义call方法:语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]])定义:调用一个对象的一个方法,以另一个对象替换当前对象。说明:call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对转载 2017-03-14 01:07:09 · 316 阅读 · 0 评论 -
Js中Prototype、__proto__、Constructor、Object、Function关系介绍
Function、Object、Prototype、__proto__内存关系图 上面的内存图跟堆栈结构可以参照文章Javascript_01_理解内存分配。 堆区图说明: Function.prototype函数对象图内部表示prototype属性的红色虚框,只是为了说明这个属性不存在。 通过上图Fun转载 2017-03-14 00:42:48 · 914 阅读 · 2 评论 -
datatables 参数详解(转)
//@translator codepiano//@blog codepiano //@email codepiano.li@gmail.com//尝试着翻译了一下,难免有错误的地方,欢迎发邮件告知,多谢。/*------------------------------------------------Feature------------------------------------转载 2016-12-14 13:37:34 · 2489 阅读 · 0 评论 -
js/javascript正则表达式中/g /i /m的用法,以及实例
http://aabc99.blog.163.com/blog/static/163010810201132185918581/正则的思想都是一样的,但是具体的写法会有所不同,在这里提到的/g,/i,/m在其他的地方也许就不能用了。一,js正则标志/g,/i,/m说明1,/g 表示该表达式将用来在输入字符串中查找所有可能的匹配,返回的结果可以是多个。如果不加/g转载 2016-09-27 10:24:00 · 401 阅读 · 0 评论 -
CSS Selector(berserkjs用到)
http://www.w3schools.com/cssref/css_selectors.aspSelectorExampleExample descriptionCSS.class.introSelects all elements with class="intro"1#id#firstnameSelects t转载 2016-01-07 18:04:08 · 821 阅读 · 0 评论 -
js变量,json格式编码困惑
json格式编码困惑#1map:{'username':"input[name='username']", 'password':"input[name='password']", 'ok':'#dijit_form_Button_0' }#2map:{username:"input[name='username']原创 2016-01-07 12:00:42 · 1641 阅读 · 0 评论 -
HighCharts 详细使用及API文档说明
一、HighCharts开发说明: HighCharts开发实际上配置HighCharts每个部分,比如配置标题(title),副标题(subtitle)等,其中每个部分又有更细的参数配置,比如标题下有对齐方式(align),标题文字(text)等。下图为整个图表的每个部分位置说明(请对照下面HighCharts整体结构) highcharts2_1二、HighCharts整体结构: 通过查看转载 2015-09-07 23:55:06 · 771 阅读 · 0 评论 -
JS中的call()和apply()方法
1、方法定义call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象。 说明: call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 如果没有提供 thisObj 参数,那么 Global 对象被用作 t转载 2015-05-19 14:19:18 · 609 阅读 · 0 评论 -
js总结
函数有prototype实例对象没有 prototype函数有bind,apply,call等方法原创 2015-06-17 17:39:52 · 438 阅读 · 0 评论 -
浅谈javascript函数劫持
一、概述javascript函数劫持,也就是老外提到的javascript hijacking技术。最早还是和剑心同学讨论问题时偶然看到的一段代码,大概这样写的:window.alert = function(s) {};觉得这种用法很巧妙新颖,和API Hook异曲同工,索性称之为javascript function hook,也就是函数劫持。通过替换js函数的实现来达转载 2015-06-08 14:58:25 · 645 阅读 · 0 评论 -
JS中遍历普通数组和字典数组的区别
// 普通数组 var intArray = new Array(); intArray[0] = “第一个”; intArray[1] = “第二个”; for(var i = 0; i < intArray.length;i++) { alert(intArray[i]); // 第一个,第二个 } // 拿到的是下标(像dictionary的key) for(v转载 2015-06-27 14:19:27 · 1813 阅读 · 0 评论 -
nodejs中Async库介绍
series(tasks, [callback]) (多个函数依次执行,之间没有数据交换) parallel(tasks, [callback]) (多个函数并行执行) waterfall(tasks, [callback]) (多个函数依次执行,且前一个的输出为后一个的输入) auto(tasks, [callback]) (多个函数有依赖关系,有的并行执行,有的依次执行) whilst(转载 2015-06-27 23:53:48 · 612 阅读 · 0 评论 -
js数组与 json 的区别
一,数组 1. 定义一维数组:var s1=new Array(); s1=[1,2,3,4]或者s1[0]=1,s1[1]=2,s1[3]=3,s1[4]=4; alert(s1[0]); 结果为1;2,,定义二维素组:var s1=new Array();转载 2015-06-27 14:21:02 · 639 阅读 · 0 评论 -
UnderscoreJS
Underscore封装了常用的JavaScript对象操作方法,用于提高开发效率。它本身与我们介绍的主题“Backbone”没有半毛钱的关系,因此你可以完全不理会“Backbone”的概念来学习它,或将它单独运用到任何一个页面。(另外,Underscore还可以被使用在Node.js运行环境。)在学习Underscore之前,你应该先保存它的API地址,因为你将在以后经常访问它:Un转载 2015-06-24 11:36:31 · 1288 阅读 · 0 评论 -
最基本的也是效率最高的继承
if (typeof Object.create === 'function') { module.exports = function inherits(ctor, superCtor) { ctor.super_ = superCtor ctor.prototype = Object.create(superCtor.prototype, {转载 2015-06-24 00:18:58 · 604 阅读 · 0 评论 -
JavaScript中&&理解
&&在JavaScript中有三种理解:1.当两个操作数都是布尔值的时候,&&对两个执行布尔与(AND)操作,只有在两个都是true时,才返回true。如果其中一个是false,它返回false。 x==0&&y==0 //只有在x和y都为0的时候,才返回true2.&&可以对真值和假值进行布尔与(AND)操作。如果两转载 2015-05-26 12:04:31 · 606 阅读 · 0 评论 -
JavaScript splice() 方法
定义和用法splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。注释:该方法会改变原始数组。语法arrayObject.splice(index,howmany,item1,.....,itemX)参数描述index必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。ho转载 2015-05-26 08:58:54 · 1047 阅读 · 0 评论 -
JavaScript 开发进阶:理解 JavaScript 作用域和作用域链
作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望能帮助大家更好的学习JavaScript。JavaScript作用域 任何程序设计语言都有作用域的概念,简单的说,作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命转载 2015-06-15 10:20:22 · 483 阅读 · 0 评论 -
jQuery插件开发模式
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统。这好比大公司们争相做平台一样,得平台者得天下。苹果,微软,谷歌等巨头,都有各自的平台及生态圈。学会使用jQuery并不难,因为它简单易学,并且相信你接触jQuery后肯定也使用或熟悉了不少其插件。如果要将能力上升一个台阶,编写一个属于自己的插件是个不错的选择。本教程可能不是最精品的,但一定是最转载 2015-07-29 15:33:02 · 610 阅读 · 0 评论 -
javascript json对象与json格式字符串区别
json对象 是 json对象json格式字符串 是string对象当用jquery.ajax 发送请时,data传入json对象,如果有数组时会出现意外;所以要传入json格式字符串(将json对象用JSON.stringify转换)jquery.ajax 会默认将json对象urlencode转为json stringdjango req原创 2015-09-09 11:29:29 · 550 阅读 · 0 评论 -
获取元素相对浏览器的top与left
$(".CreditBusiness h3").offset().top$(".CreditBusiness h3").offset().left原创 2016-01-08 11:05:37 · 1748 阅读 · 0 评论 -
js 正则表达式 贪婪与惰性
首先引入一个介绍比较详细的网站http://www.jb51.net/article/31491.htm接下来是本人的简介其实贪婪和惰性很容易理解,从字面意思我们就可以知道,所谓的"贪婪"的意思就是,如果符合要求就一直往后匹配,一直到无法匹配为止,这就是贪婪模式。所谓的惰性模式就是一旦匹配到合适的就结束,不在继续匹配下去了,下面我介绍几个例子来主要讲述一下。首先讲述转载 2017-04-14 16:04:52 · 440 阅读 · 0 评论 -
JavaScript replace()
定义和用法replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。语法stringObject.replace(regexp/substr,replacement)参数描述regexp/substr必需。规定子字符串或要替换的模式的 RegExp 对象。请注意,如果该值是一个字转载 2017-07-19 13:40:23 · 424 阅读 · 0 评论 -
深入理解ES7的async/await
在最开始学习ES6的Promise时,曾写过一篇博文 《promise和co搭配生成器函数方式解决js代码异步流程的比较》 ,文章中对比了使用Promise和co模块搭配生成器函数解决js异步的异同。在文章末尾,提到了ES7的async和await,只是当时只是简单的提了一下,并未做深入探讨。在前两个月发布的Nodejs V7中,已添加了对async和await的支持,今天就来对这个东东做一下深入的转载 2017-09-13 11:42:57 · 641 阅读 · 0 评论 -
JS正则表达式详解
开篇,还是得说说 ^ 和 $ 他们是分别用来匹配字符串的开始和结束,以下分别举例说明 "^The": 开头一定要有"The"字符串; "of despair$": 结尾一定要有"of despair" 的字符串; 那么,"^abc$": 就是要求以abc开头和以abc结尾的字符串,实际上是只有abc匹配 "notice": 匹配包含notice的转载 2015-06-16 23:05:37 · 645 阅读 · 0 评论 -
Object.defineproperty实现数据和视图的联动
Object.defineproperty语法在一个对象上定义新的属性var o = {}; // 创建一个新对象// Example of an object property added with defineProperty with a data property descriptorObject.defineProperty(o, "a", {value : 37转载 2015-06-18 23:47:37 · 663 阅读 · 0 评论 -
function method(){}与var method = function(){}的区别
简单的代码:123456789101112function say(){ method01();//method01 method02();//error function method01(){ alert('method01'); } var meth转载 2015-06-18 17:17:11 · 1195 阅读 · 0 评论 -
理解Javascript_06_理解对象的创建过程
在《理解Javascript_05_原型继承原理》一文中已经详细的讲解了原型链的实现原理,大家都知道原型链是基于对象创建的(没有对象,哪来原型),那么今天就来解析一下对象的创建过程。 简单的代码我们先来看一段简单的代码:12345678910111213141516171819fun转载 2015-06-18 15:10:37 · 416 阅读 · 0 评论 -
Ubuntu,mac查看端口命令
ubuntu查看端口#查看进程端口号及运行的程序sudo netstat -antup#PID为端口号远行进程的号sudo kill PID(进程码)# 查看所有打开的端口及服务名(注意这里显示的服务名只是标准端口对应的服务名,可能并不准确)nmap localhost # 查看哪些进程打开了指定端口port(对于守护进程必须以root用转载 2015-06-18 13:39:49 · 639 阅读 · 0 评论 -
prototype与[[prototype]]
对于面向对象的基础语法在此我就不重复了,对面向对象不熟悉的朋友可以参看《使用面向对象的技术创建高级 Web 应用程序》一文。 prototype与[[prototype]]在有面象对象基础的前提下,来看一段代码:12345678910111213141516//Animal构造函数funct转载 2015-06-18 13:39:16 · 920 阅读 · 0 评论 -
javascript通用循环遍历方法forEach
上一次的错误太多,排版也出现了问题,重写了一遍,希望大家支持. 循环遍历一个元素是开发中最常见的需求之一,那么让我们来看一个由框架BASE2和Jquery的结合版本吧. 123456789101112131415161718192021222324252627转载 2015-06-17 23:49:15 · 1368 阅读 · 0 评论 -
我的getElementsByClassName实现
先来看一下代码:(支持多个class查询和在某个范围内进行查询)1234567891011121314151617181920212223242526272829/* * 根据元素clsssName得到元素集合 * @param fatherId转载 2015-06-17 23:40:39 · 1177 阅读 · 0 评论 -
理解Javascript_01_理解内存分配
在正式开始之前,我想先说两句,理解javascript系列博文是通过带领大家分析javascript执行时的内存分配情况,来解释javascript原理,具体会涵盖javascript预加载,闭包原理,面象对象,执行模型,对象模型...,文章的视角很特别,也非常深入,希望大家能接受这种形式,并提供宝贵意见。 原始值和引用值在ECMAScript中,变量可以存放两种类型的值,即原始值和引转载 2015-06-17 23:17:10 · 443 阅读 · 0 评论 -
JS 创建对象(常见的几种方法)
方便学习js类的朋友,让你快速的掌握js类的定义方法,方法有很多种,结果都一样。大家可以根据自己的爱好选用。NEWSZW_HZH_BEGIN 贴个代码先: function O(user,pwd){ //use constructor this.user=user; this.pwd=pwd; this.get=get; return this; }转载 2015-06-17 17:19:03 · 460 阅读 · 0 评论 -
!!Js中Prototype、__proto__、Constructor、Object、Function关系介绍
一 Prototype、__proto__与Object、Function关系介绍 Function、Object:Js自带的函数对象。 prototype,每一个函数对象都有一个显示的prototype属性,它代表了对象的原型(Function.prototype函数对象是个例外,没有prototype属性)。 __proto_转载 2015-06-17 18:00:48 · 681 阅读 · 0 评论