`
文章列表
10.window.close()方法可以关闭窗口,但是只能关闭自己创建的窗口 11.window.moveTo(),moveBy(),resizeTo(),resizeBy()方法可以移动窗口位置,或者改变窗口大小,不过出于安全考虑,浏览器对这些方法都做了一些限制 12.浏览器提供3种方法进行屏幕交互,分别是alert(),confirm(),prompt() 13.window.status属性是状态栏的提示文字,不过这个属性在IE可写,在FF下似乎是只读的。浏览器似乎没有提供其他属性或者方法,所以FF下状态栏应该是不可编辑的 14.window.onerror属性可以绑定一个函数, ...
1.客户端javascript提供了setTimeout()和setInterval()这2个方法来支持java中的TimerTask 2.Location是地址对象,可以通过window.location访问到,其中包含protocol,href等属性 3.通过给location赋值,可以使浏览器载入另一个地址,默认是相对路径 4.location.replace(url),这个方法可以载入指定的url,但是会替换掉历史浏览记录中的当前记录,而不是创建一条新记录,这造成浏览器的back按钮不可用 5.History对象是历史浏览记录,可以通过window.history访问。不过出于安 ...
12.当有多个onload事件处理函数注册,浏览器会调用所有的处理函数,但是调用的顺序则无从保证 13.文档解析已经完成之后绝对不能调用document.write()方法。这样做的话,将创建一个新的document,并覆盖掉现有的document,用户甚至没有机会看到现有的document 14.javascript是单线程的。因此两个事件处理函数绝对不会同时执行 15.单线程也带来一些问题:它意味着javascript代码不能执行太长时间。如果javascript代码执行太久,会延迟document的载入,用户直到代码执行完成之间,都看不到页面。如果事件处理函数执行太久,则执行期间浏览 ...
1.在客户端javascript中,Document对象表示HTML文档,Window对象表示显示文档的浏览器窗口 2.Window是客户端中的global object,非常重要。包括alert()等方法,document等属性,都是window对象的属性 3.Window对象有2个属性指向自身,分别是window ...
1.如果要编写能在多个模块间共享的javascript代码,要遵守的最重要的规则就是避免定义全局变量。一旦定义了全局变量,就有这些全局变量被其他代码无意修改的风险。由此引发的BUG是很难定位的 2.一个模块不该定义超过一个symbol到全局命名空间中。另外有2条建议:如果向全局命名空间中添加了symbol,其文档应该清楚地描述出这模块是什么。(比如jQuery)symbol的名称和引入symbol的.js文件之间,应该有清晰的对应关系。(包括目录名和文件名) 这章好像是插件开发相关的,暂时用不到,后面的部分就没继续看了
8.当在Complex对象上查找属性时,首先在对象本身上查找。如果属性没有找到,就查找Complex.prototype对象。最后,如果仍然没有找到,则在Object.prototype对象上查找 9.在需要的时候,用以下方式可以实现从任何对象继承,而不只是从Object类继承 PositionedRectangle.prototype = new Rectangle( ); delete PositionedRectangle.prototype.width; delete PositionedRectangle.prototype.height; PositionedRectan ...
1.结合使用new操作符和function(),会创建一个新的对象。完整的过程是这样的:首先new出一个object。然后将function.prototype的所有属性映射到新object上。(注意,不是复制,而是建立了一个映射关系)最后以新object为对象调用function ...
1.function定义时指定的参数数量可以和实际调用时传递的参数数量不同,没有传递的参数设为undefined,多余的参数被忽略,但是可以通过arguments属性来访问,这是call object的属性 2.没有return语句的函数,以及直接return的函数,返回 ...
1.javascript中的对象只是键值对而已,创建object有2种方法,一种是var o = {};另一种是var o = new Object(); 2.访问对象属性有2种办法,一种是object.prop,另一种是object[prop],通常使用前者,但是在对象属性名在运行时才能确定的情况,只能使用后者 3.用push()和pop()方法,可以使array具有First In Last Out的行为。shift()和unshift()方法则相反,是在array的头部进行操作
1.javascript中的switch比java中的好用,不仅可以用来检查number,也可以直接用来匹配string 2.for/in语句 for (var prop in object) { alert(prop); } 3.with的作用是把对象临时地置于scope chain的第一位,在执行完毕后则清除。with语句的性能比较差,如果没有充分的理由,最好少用
1.经javascript解释器能计算出一个有效值的语句,即javascript表达式,比如17,"hello",i,i+3等,都是表达式 2.操作符==在可能的情况下,会自动进行类型转换。===则不会 。。这章内容太少了,实在没啥好记的了
1.javascript中的变量范围只有2种:全局变量和函数局部变量,不存在block scope。 2.变量有原始类型和引用类型的区别。原始类型的赋值是值复制,引用类型的赋值是引用复制。 3.javascript中也有垃圾回收机制 var s = "hello"; // Allocate memory for a string var u = s.toUpperCase( ); // Create a new string s = u; // Overwrite reference to original ...
1.javascript中的数据类型分为基本数据类型和引用数据类型 2.基本数据类型包括number,string,boolean,null,undefined 3.引用数据类型包括object,function,array 4.有一些特殊的number,包括NaN,Infinity,Nunber.MAX_VALUE等,它们typeof的值都是number,它们的constructor是function Number(){} 5.string是不可变的,这点和java中一样 6.function func(){}这种形式相当于var func = function(){};,这2种定义 ...
1.字符集是Unicode,所以某种程度上是可以用中文编程的,虽然没有人这么做 2.区分大小写,但其主要所处的环境HTML,则是不区分大小写的 3.语句最后的;是可选的,但是一般来说,强烈建议写上; 4.注解写法和java完全一样 5.最重要的字面量是[]和{},前者是数组,后者是对象 6.标识符的规则和java也一样。另外有一个不成文的规定:通常用__name__这种形式,表示对象的私有属性 7.java中把类的成员变量称为字段(field),而在javascript中称为属性(property)
javascript的继承和java不同,不是基于class实现,而是基于prototype实现的。 function Animal(nAge){ this.age = nAge; } Animal.prototype.eat = function(){ // eat something }; function Cat(sName){ this.name = sName; } Cat.prototype = new Animal(); Cat.prototype.constructor = Cat; var cat = new Cat(" ...
Global site tag (gtag.js) - Google Analytics