自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

知其所以然

知其所以然

  • 博客(32)
  • 资源 (2)
  • 收藏
  • 关注

原创 看看你多色

var a=document.getElementsByClassName("btn play-btn");a[0].click();var child;var childBack=[];var first,second,third;function getDif(data){ //最理想的情况是根据前三个就可以找出不同的 //否则根据前两个找出相同的,然后找出不同的即可,(找不同

2014-08-04 10:57:33 10604

原创 android源码分析 android toast使用详解 toast自定义

toast android源码分析

2014-06-18 11:53:30 972

原创 json

其实json非常简单,却有非常的本质的说明了在一切编程语言中存在的两种结构:第一种就是一系列数据的集合,也可以认为是我们常说的数组。第二种就是键值对,也就是我们常见的map,hash,对象等,是说明某个数据的意义的数据。在js中很多人都不明白对象和数组之间的区别,其实很简单,如果你想描述一系列没有意义的数据,那么数组是你不二的选择,如果你的数据需要明确的指出其中意义,要明确

2014-03-19 22:22:38 1029

原创 http session cookie

http协议本身不记录链接双方的状态和信息我们需要自己实现双方的识别问题cookie是一种让服务器识别用户的一种解决方案,服务器向客户端发送一段数据,客户端再次链接的时候,服务器端取得该数据,从而实现一种识别,这是一种客户端存储,但是不要把cookie当成存储数据的方式,他的唯一作用就是识别。正如其本身含义,他不是大餐,只是一个小甜饼。识别用户的目的不是仅仅为了

2013-12-04 16:00:33 601

原创 无语

在学习nodejs的过程中,创建了一个http服务器,在进行开发的时候发现每当请求一个页面,都会莫名其妙的多出一个请求,一直没发现是哪的问题,今天测试了一下才发现是多可笑,原来多出的那一个请求时发favicon.ico无语啊

2013-12-03 17:27:32 576

原创 nodejs

asynchronous, single-threaded, event-driven execution model异步式    单线程    事件驱动执行模型

2013-11-26 18:43:50 802

原创 ajax的open和send

ajax中,或者更准确的说是xhr对象中,open和send是两个最为重要的方法,刚学的时候一直疑惑两个方法的区别,终于明白了open方法只不过是指定了一些必要的参数,并不会真正的发送请求,发送请求是有send完成的,在xhr对象建立后,其状态码为0,当调用open后,状态码变为1。2,3,4都是在请求发出后的状态,也就是send调用后的状态。2,3作用不大,都是响应还未完成时的状

2013-11-25 16:37:02 1391

原创 ajax学习

ajax其实只是一种技术而已,不要被其名字所欺骗。只要能实现客服端在无刷新的情况下与服务器端交换数据,都能叫做ajax。ajax很早就存在,他的实现方法各不相同,但大多数都比较繁琐且不统一。后来意识到这种技术的必要性时,人们开始进行这项技术的统一和简单化。所以出现了XmlHttpRequset对象,通过该对象可以方便的实现ajax。要想深刻理解ajax就必须要了解http协议,http

2013-11-25 16:07:44 673

原创 node.js的event loop

如果对javascript有深入了解,那么建议进行node.js的开发,因为node.js是服务器端javascript的一个极其优秀的环境你可以用javascript进行服务器端的开发,而不仅仅是进行浏览器端的开发。说到nodejs,不得不说为什么nodejs能在服务器端开发中得到广泛的支持,这主要源于其处理问题的思路,他充分的利用了事件驱动的模型,使得资源得到最大的利用。另外他采用

2013-11-25 13:02:18 718

原创 __proto__和prototype

javascript是一种基于原型的语言,它的继承是靠一个中间对象-----原型对象来完成的,通过原型对象形成一个属性的查找链,即所说的原型链。为了实现代码的重用,我们有必要把那些需要共享的属性和方法集中起来,在传统的面向对象的语言中这个任务由类完成,而在javascript中没有类的概念,而是依靠原型对象来把这些公用的属性和方法集中起来形成一个共享的对象,当需要共享这个对象时,只

2013-11-24 15:36:18 707

原创 空对象和空的对象

作为一门面向对象或者说基于对象的语言,必须要深刻理解javascript中对像的概念,下面就以空对象和空的对象来展开对javascript对象的探讨。我们说在javascript中有一种特殊的数据类型叫做Null,它只有一个值即null,表示一个并不存在的对象。有时候这是非常有用的,最明显的例子是在原型链中,最顶端的原型对象一定是一个空对象即null。我们可以用Object.pro

2013-11-24 14:45:42 2222

原创 执行环境和对象上下文

javascript中,执行环境是一个非常重要的概念,虽然他是一个规范上的机制,但我们必须要深刻理解他,这样才能更深入的理解这门语言。其实,执行环境的英文叫做execution context,context有上下文和环境这两个含义,那么这个术语是翻译成执行环境还是执行上下文呢?其实还有另一个概念叫对象上下文,这个概念在一般的面向对象的语言中非常普遍,因为每段代码都是在某个对象里运行。比如

2013-11-24 14:07:50 1619

原创 javascript函数的多义性

没有哪一门语言能像javascript一样把函数处理的如此丰富多彩,在我们的印象中,函数只是一种完成某种特定功能的代码块,是一种能反复调用的代码。函数几乎是每种语言必不可少的元素,在不同的语言中,函数有着不同的名字,有些语言区分函数有无返回值,有则成为函数,无则成为过程,比如visual basic,在面向对象的语言中,比如说java,函数称为方法。不管函数被称作什么,在这

2013-11-24 13:42:49 632

翻译 javascript执行环境和栈

最近看到的一篇文章,讲到了javascript中基础但及其重要的一个概念:执行环境,并且用栈的理论描述,非常深入,相信你看过之后能极好的理解javascript函数运行机制。也为javascript的作用域链等概念打好基础。在这篇文章中我将深入的分析javascript中最为基础的一个概念------执行环境,在读完该文章后,我希望你能对执行环境有一个清晰和深入的认识,并且

2013-11-23 18:40:58 1442

原创 javascript的Math和Global

我们通常所,Global对象和Math对象是内置单体对象,这到底是什么意思呢?其实,通俗来说就是,这两个对象无需实例化就可以使用,也就是不用通过new操作符进行实例化即可使用,因为他们本身就是一个完整的对象,而不像其他几个比如Function,Object等,如果你直接使用typeof Math你会发现,返回值是object而不像其他几个是function,也就是说Math对象天然

2013-11-23 11:21:11 701

原创 javascript的constructor

我们知道,在javascript中,每个对象都拥有一个constructor属性,该属性指明了该对象是哪个构造函数的实例,那么这个属性是如何形成和得到的呢?这就牵涉到原型的概念,其实默认情况下,一个对象本身是没有constructor这个属性的,这个属性存在于原型对象中,也就是说,constructor的值得获得是这样一个过程对象.constructor=对象.__proto__.co

2013-11-23 11:12:53 653

原创 javascript继承机制

javascript的继承实现不同于类式继承,在传统的类式继承中,一个对象必须诞生于一个特定的类,类成了所有对象的模板。javascript作为一门面向对象或者叫基于对象的语言,自然也有继承的概念,只不过实现的方式不同而已。在javascript中,继承是通过一种原型继承的方式实现的。所

2013-11-23 11:04:00 847

原创 函数声明和函数表达式

可能在其他语言中开起来有点奇怪,但是在javascript中,函数确实有两种含义,第一种和其他语言相似,函数是一段可以反复调用执行的代码。但另一方面javascript函数也是一种对象,他可以拥有属性和方法就和一般的对象一样。这也意味着函数在javascript是如此的重要和多变。因为他是对象,那么他自然可以和其他对象一样,赋值给一个变量,也就是被引用,另外他也可以作为

2013-11-22 14:48:12 765

原创 eval笔记

eval函数参数codes -- 字符串形式的表达式或语句eval函数返回值如果没有参数,返回undefined如果有返回值将返回此值,否则返回undefined如果为表达式,返回表达式的值如果为语句返回语句的值如果为多条语句或表达式返回最后一条语句的值eval函数说明除了解析JSON对象外,eval在程序中很少使用

2013-11-22 10:54:49 648

原创 javascript中的()和{}

由eval('('+json+')')想到的在javascript中,小括号和大括号也有他的特殊用法,比如小括号他可以用来执行一个函数,可以作为一个分隔符。而大括号可以是一个语句块,也可以作为一个对象字面量,来构造一个对象。大括号在作为一个语句块执行时和作为表达式一部分执行时时完全不一样的,当作为表达式执行时是创建了一个对象,而作为一个语句执行时,只是单纯的执行其中的语句,这在

2013-11-22 10:37:54 860

原创 执行环境和对象上下文

对象上下文解决的是this值的问题,而执行环境则是一个动态执行的概念。我们说一个函数在执行时会由解释引擎创建一个执行环境,该函数的信息和状态等一般都存储在这个环境中,当然这是一个抽象的概念,实际并不存在。但是对象上下文的理解可能与其他面像对象的语言不同,比如java,它的函数一般会依附于一个特定的对象,不会发生改变,但javascript不同,其函数是独立的对象,它的this值

2013-11-21 20:19:24 725

原创 javascript作用域

几乎所有语言都有作用域的概念,而且相当重要,是设计一门语言时不可回避的问题,大体来说,作用域一般可以分为两种,即静态作用域和动态作用域,一般情况下,多采用静态作用顾规则,又叫词法作用域,是指作用域在词法分析阶段就可以确定,而动态作用域则采用较少,因为其实现较为复杂。对于javascript来说,其可以成为静态作用域,虽然不完全是。所谓的作用域,可以理解为变量的可访问范围,也即在

2013-11-21 20:10:36 556

原创 javascript函数定义和执行

javascript在浏览器中一般都是解释执行的,不同于一般的语言比如c,代码经过编译后形成了可执行代码,执行时载入即可。我们通常看到的javascript是明显分为两个阶段的,第一个阶段就是代码的载入,第二个阶段是代码的执行阶段。在这其中,函数式最值得讨论的代码,当javascript解释器执行到函数时,其实已经经过一系列对该函数的处理,其中一点就是将函数的内部属性即在ecmascr

2013-11-21 18:42:50 790

原创 javascript作用域链和原型链

最近在学习javascript的过程中,先由明了,再到困惑,现在又步入了明了的阶段。那么就说说原型链和作用域链的问题,刚学习的时候,这两者是分开学的,并没有在这两者之间有困扰,但是当回过头来综合学习的时候,却在这两者之间产生了困惑,后来经过学习,发现原来这两者完全属于不同的范围,只不过名字相似而已,发生困惑的就是他们寻找目标的方式几乎一样,都是有链顶到链尾的顺序。其实区分他们的

2013-11-21 18:23:24 1008

原创 javascript函数与对象

在javascript中,函数与对象的区分是不能和一些常规的语言比如c或java相比的。在javascript中,有时函数就是对象,在对象是属性和方法的集合上看,两者之间并没有区别,函数本身同样可以和一般对象一样拥有属性和方法,比如定义一个函数:function fun(){};函数fun就是一个对象,你可以像操作其他对象一样操作函数比如可以给他增加一个属性,fun.age=2;也

2013-11-21 18:12:31 650

原创 dom与javascript

dom到底是什么?dom,即document object model,文档对象模型,几乎所有的解释都以这句话开头,但dom到底是什么?其实,dom很简单,它就是一种规范,一种为了处理xml文档而制定的规范。解析xml文档的方法有很多,而dom是其中较通用的方法,即把dom看做是一个由节点构成的树。既然是一种规范,那么他就是通用的并不是依附于哪一种语言。只要遵循了dom规范,那么就

2013-11-21 10:39:15 728

原创 javascript this

javascript中的this是一个让传统面像对象程序员困惑的地方。其实理解this是很简单的,我们可以把this看作是我们汉语中的代词,比如说:杨振雨是河南省郑州市人,他来这个城市快1年了,其中的他就好比javascript中的this,我们完全可以说杨振雨是河南省郑州市人,杨振雨来这个城市快1年了,但这样说是不是太傻了?而在javascript中this就是这么一个灵活和

2013-11-20 23:01:01 701

原创 对javascript的this理解

毫无疑问,在谈到javascript的this时,正和这种特殊的语言一样,其this也较其他语言有着其特殊性。在传统的面向对象的语言中,比如java,函数一般是依附于某个对象而存在,在这些语言中,函数一般称方法。但是在javascript中,函数是一等对象,也就是说他和其他对象一样,在对象这个层面上并没有什么特殊性,他可以被赋值给变量,可以由其他函数返回,可以作为参数。因此其this并

2013-11-20 20:33:00 606

原创 javascript eval() json

今天学习json的时候遇到了一点问题,是关于在用eval对json进行运算的时候,eval()能够作为一种解析json数据的方法,但是不推荐使用,因为javascript有其他的方法他进行解析,所以一般用专门的方法比较合适。下面就对eval函数进行一个简单的说明,eval函数能够将传入其中的字符串解析成javascript代码执行,在遇到json的数据格式时,比如var  jsonstr=

2013-11-19 20:31:01 755

原创 json学习

json,即JavaScript Object Notation,是一种数据交换的格式,在这个意义上来说,他和xml等并没有什么区别,也就是说他只是一种规范,独立于语言,每种语言都能用不同的方法实现和处理它,只不过处理的方式不同。相对于其他语言,javascript只不过是处理起来更方便而已,因为json的规范就是javascript的一个子集。写法和javascript的对象字面量几乎相同。和x

2013-11-19 17:56:28 677

原创 javascript数组与对象区别和联系

在学习javascript这门语言的时候遇到了很多问题,主要是由于这门语言与其他语言相比,有很多的“怪癖”,其中之一便是它的对象的特殊性。在javascript对象被定义为属性和值的集合。最直接的表现便是对象字面量:var obj={a:3,b:"hello",c:[1,2,3]}。相比传统的面向对象的语言,这种方式大大简化的对象创建。在这种情况下,javascript的对象其实就是一个关

2013-11-19 17:17:36 2121

原创 ruby on rails安装无反应

最近在学习ruby,ruby最著名的就是其web框架ruby on rails。于是便迫不及待的安装,ruby的安装过程毫无问题,从源代码安装最新版。但是进行rails安装时,运行gem install rails竟然毫无反应,当ctrl+c时显示是否终止安装,那么应该还是正在安装的。所以可能是安装信息没有回显,原来gem install rails -V可以回显信息,通过回显信息发现原来时间都浪

2013-11-19 14:10:39 1168

ppk谈javascript

这是一本可以大大提高web前段工程师书写优秀的前段代码的教程

2013-11-20

javascript捷径教程 经典 核心概念

该书用比较简洁的语言描述了javascript重要的特点和概念,适合快速对javascript有一个比较高的认识,所谓的捷径绝对不是偷懒,而是可以在掌握了这些概念后学习其他内容便得心应手

2013-11-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除