Fork me on GitHub
上一页 1 ··· 14 15 16 17 18
  2011年9月5日
摘要: 这篇文章来回答javascript通用循环遍历方法forEach中最后提到的关于伪数组的问题。什么是伪数组能通过Array.prototype.slice转换为真正的数组的带有length属性的对象。这种对象有很多,比较特别的是arguments对象,还有像调用getElementsByTagName,document.childNodes之类的,它们都返回NodeList对象都属于伪数组。我们可以通过Array.prototype.slice.call(fakeArray)将伪数组转变为真正的Array对象。来看个示例:1varfakeArray01 = {0:'a',1:& 阅读全文
posted @ 2011-09-05 15:06 【艾伦】 阅读(2913) 评论(0) 推荐(0) 编辑
摘要: 循环遍历一个元素是开发中最常见的需求之一,那么让我们来看一个由框架BASE2和Jquery的结合版本吧.01varforEach = (function(){02//数组与伪数组的遍历03var_Array_forEach =function(array, block, context) {04if(array ==null)return;05//对String进行特殊处理06if(typeofarray =='string'){07array = array.split('');08}09vari = 0,length = array.length;10for 阅读全文
posted @ 2011-09-05 15:03 【艾伦】 阅读(4146) 评论(0) 推荐(1) 编辑
摘要: 先来看一下代码:(支持多个class查询和在某个范围内进行查询)01/*02* 根据元素clsssName得到元素集合03* @param fatherId 父元素的ID,默认为document04* @tagName 子元素的标签名05* @className 用空格分开的className字符串06*/07functiongetElementsByClassName(fatherId,tagName,className){08varnode = fatherId&&document.getElementById(fatherId) || document;09tagName 阅读全文
posted @ 2011-09-05 15:01 【艾伦】 阅读(595) 评论(2) 推荐(0) 编辑
摘要: 今天让我们站在语言的高度来看一下Javascript都有点什么。因为是全局性的俯瞰,所以不针对细节作详细的讲解。先来看一张图吧:解释一下:核心(ECMAScript):定义了脚本语言的所有对象,属性和方法文档对象模型(DOM):HTML和XML应用程序接口浏览器对象模型(BOM):对浏览器窗口进行访问操作现在来具体的讲一个各个成分:关于ECMAScriptECMAScript的工作是定义语法和对象,从最基本的数据类型、条件语句、关键字、保留字到异常处理和对象定义都是它的范畴。在ECMAScript范畴内定义的对象也叫做原生对象。其实上它就是一套定义了语法规则的接口,然后由不同的浏览器对其进行实 阅读全文
posted @ 2011-09-05 14:56 【艾伦】 阅读(441) 评论(0) 推荐(1) 编辑
摘要: 来自普遍的回答:其实在 ECMAScript 的原始类型中,是有Undefined 和 Null 类型的。 这两种类型都分别对应了属于自己的唯一专用值,即undefined 和 null。值 undefined 实际上是从值 null 派生来的,因此 ECMAScript 把它们定义为相等的,通过下列代码可以验证这一结论:alert(undefined == null); //true尽管这两个值相等,但它们的含义不同。undefined 是声明了变量但未对其初始化时赋予该变量的值,null 则用于表示尚未存在的对象。如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是 null。所 阅读全文
posted @ 2011-09-05 14:53 【艾伦】 阅读(971) 评论(0) 推荐(0) 编辑
摘要: 在正式开始之前,我想先说两句,理解javascript系列博文是通过带领大家分析javascript执行时的内存分配情况,来解释javascript原理,具体会涵盖javascript预加载,闭包原理,面象对象,执行模型,对象模型...,文章的视角很特别,也非常深入,希望大家能接受这种形式,并提供宝贵意见。原始值和引用值在ECMAScript中,变量可以存放两种类型的值,即原始值和引用值。原始值指的就是代表原始数据类型(基本数据类型)的值,即Undefined,Null,Number,String,Boolean类型所表示的值。引用值指的就是复合数据类型的值,即Object,Function. 阅读全文
posted @ 2011-09-05 14:47 【艾伦】 阅读(476) 评论(4) 推荐(6) 编辑
摘要: 执行环境,作用域2010-12-10 17:03 by 名刘天下, 84 visits,收藏,编辑在javascript的学习中,执行环境、作用域是2个非常非常重要和基本的概念,理解了这2个概念对于javsacript中很多脚本的运行结果就能明白其中的道理了,比如搞清作用域和执行环境对于闭包的理解至关重要。一、执行环境(exection context,也有称之为执行上下文) 所有 JavaScript 代码都是在一个执行环境中被执行的。执行环境是一个概念,一种机制,用来完成JavaScript运行时在作用域、生存期等方面的处理,它定义了变量或函数是否有权访问其他数据,决定各自行为。 在jav 阅读全文
posted @ 2011-09-05 13:46 【艾伦】 阅读(3781) 评论(3) 推荐(8) 编辑
  2011年9月4日
摘要: var c = ['red','bule']; //alert(c.push('yellow')); var colors = new Array; var count = colors.unshift('red','yeelow'); count = colors.unshift("black"); var item = colors.pop(); // alert(item); // alert(colors.length)/*栈 last in first out 队列 first in 阅读全文
posted @ 2011-09-04 21:14 【艾伦】 阅读(428) 评论(1) 推荐(1) 编辑
  2011年9月2日
摘要: function set(obj){obj.name = "cj";obj = {};obj.name = "aa" // 如果是按引用传递的话结果会改成这个}var obj = {};set(obj);alert(obj.name);结果是cj,函数的参数是局部变量JavaScript 函数传递参数时,是值传递。虽然您可能不信,因为ECMAScript 变量可能包含两种不同数据类型的值:基本数据类型,和引用数据类型。难道引用数据类型传递的时候难道也是值传递吗?答,没错。当一个变量向另一个变量复制引用类型的值时,会将存储在栈中的值(栈中存放的值是对应堆中 阅读全文
posted @ 2011-09-02 21:27 【艾伦】 阅读(427) 评论(1) 推荐(4) 编辑
摘要: JavaScript中的this总是让人迷惑,应该是js众所周知的坑之一。个人也觉得js中的this不是一个好的设计,由于this晚绑定的特性,它可以是全局对象,当前对象,或者…有人甚至因为坑大而不用this。JavaScript中的this总是让人迷惑,应该是js众所周知的坑之一。个人也觉得js中的this不是一个好的设计,由于this晚绑定的特性,它可以是全局对象,当前对象,或者…有人甚至因为坑大而不用this。其实如果完全掌握了this的工作原理,自然就不会走进这些坑。来看下以下这些情况中的this分别会指向什么:1.全局代码中的thisalert(this)//window 全局范围内 阅读全文
posted @ 2011-09-02 17:26 【艾伦】 阅读(3271) 评论(1) 推荐(10) 编辑
上一页 1 ··· 14 15 16 17 18