在 JavaScript 核心语言中,全局对象的预定义属性都是不可枚举的,所有可以用 for/in 循环列出所有隐式或显式声明的全局变量,如下所示: var variables = ""; for (var name in this) { variables += name + "<br />"; } document.write(variables); 或者 var var ...
阅读全文JavaScript 实现是由以下 3 个不同部分组成的: JavaScript的核心: 对ECMAScript描述的实现 描述了该语言的语法和基本对象; DOM 描述了处理网页内容的方法和接口; BOM 描述了与浏览器进行交互的方法和接口。 Javascript Engine 关于Javascript引擎可以参考wiki,里面讲述了其历史以及不同浏览器使用的不同的JS引擎 http://en.wikipedia.or ...
阅读全文ECMAScript 定义类或对象有很多方法,W3SCHOOL总结了6中方法供学习: 工厂方式 原始的方式 因为对象的属性可以在对象创建后动态定义,所有许多开发者都在 JavaScript 最初引入时编写类似下面的代码: var oCar = new Object; oCar.color = "blue"; oCar.doors = 4; oCar.mpg = 25; oCar.showColor = function() ...
阅读全文继承机制实例 通过使用 ECMAScript,不仅可以创建对象,还可以修改已有对象的行为。 prototype 属性不仅可以定义构造函数的属性和方法,还可以为本地对象添加属性和方法。 创建新方法 通过已有的方法创建新方法 可以用 prototype 属性为任何已有的类定义新方法,就像处理自己的类一样。例如,还记得 Number 类的 toString() 方法吗?如果给它传递参数 16,它将输出十六进制的字符串。如果这个方法的参数是 2,那么它 ...
阅读全文JavaScript 高级教程继承机制的实现用 ECMAScript 实现继承机制,您可以从要继承的基类入手。所有开发者定义的类都可作为基类。出于安全原因,本地类和宿主类不能作为基类,这样可以防止公用访问编译过的浏览器级的代码,因为这些代码可以被用于恶意攻击。定基类后,就可以创建它的子类了。是否使用基类完全由你决定。有时,你可能想创建一个不能直接使用的基类,它只是用于给子类提供通用的函数。在这种情况下,基类被看作抽象类。尽管 ECMAScript 并没有像其他语言那样严格地定义抽象类, ...
阅读全文初次看些JS代码时会发现xxFucObject.superclass.constructor.call的使用,咋看以为JS什么时候增加了superclass这个object预定义属性, 可是并没有。constructor, call的使用可以查询 /********************** call() 方法 call() 方法是与经典的对象冒充方法最相似的方法。它的第一个参数用作 this 的对象。其他参数都直接传递给函数自身。例如: ******* ...
阅读全文jQuery.extend = jQuery.fn.extend = function() { var src, copyIsArray, copy, name, options, clone, target = arguments[0] || {}, i = 1, length = arguments.length, deep = false; // Handle a deep copy situation if ( typeof target == ...
阅读全文一个简单的测试看 function F(){}; f = new F(); for (prop in f) alert(prop); 结果并没有alert什么属性,控制台上可以看到下面的对象。 F __proto__: F constructor: function F(){} arguments: null caller: null length: 0 name: "F" prototype: ...
阅读全文cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。可以使用 JavaScript 来创建和取回 cookie 的值。这是变量序列化和反序列化的过程。 Cookie的格式(属性): cookieName=cookieValue;expires=expiresDate;path=URLpath;domain=siteDomain//cookie Cookie常用函数: 1 ...
阅读全文找出下面的javascript中值不为false的表达式: false NaN 0 -0 Boolean(5>6) null undefined "" 5/"test" 5*"Ten" 5+"-5" 5-"5" -15 +0 ...
阅读全文