前端开发06 我们会对页面进行测试,测试内容主要包括哪几个方面? xml的解析方式? 常用的用dom解析和sax解析。dom解析是一次性读取xml文件并将其构造为DOM对象供程序使用,优点是操作方便,但是比较耗内存。Sax是按事件驱动的方式解析的,占用内存少,但是编程复杂 介绍一下javascript中function的用法 在网页设计与制作时,为了使制作出来的网页下载速度快、布局合理、浏览方便、和谐悦目,应注意哪些问题? 网页文件大小页面布局页面导航图像大小颜色搭配背景图像   CSS+DIV开发Web页面的优势有哪些? 介绍一下JavaScript中的对象

页面效果是否美观
链接是否完好
页面功能(如验证、交互等)是否正确
测试不同浏览器的兼容性

xml的解析方式?

常用的用dom解析和sax解析。dom解析是一次性读取xml文件并将其构造为DOM对象供程序使用,优点是操作方便,但是比较耗内存。Sax是按事件驱动的方式解析的,占用内存少,但是编程复杂

介绍一下javascript中function的用法

JavaScript中, function是一种数据类型, 所有的function都是从buildin的Function object 衍生的对象. 所以在JavaScript 中function可以作为参数传递, 可以作为Object的property, 也可以当作函数返回值. function在JavaScript中有两种用法, 一种是当作constructor, 前面加上new keyword用来建立对象. 一种是当作method, 为其他对象调用.

注意function和method在中文里的意思相当, 在有些语言里也可以通用. 但是在 JavaScript中, 它们还是有所区别的. function本身是是一个对象, 而当作为一个方法他属于一个对象时, 就成为了一个这个对象的 method, 相当于一个对象种的属性. 也就是说method是相对于一个对象而言的, function在某些情况下成为了一个对象的 method.

function Book(name, author, page) {
this.name = name;
this.author = author;
this.page = page;
this.getReader = Book_getReader;
}

function Book_getReader() {
//….
}

上面的例子种, function Book_getReader()就成为了Book的一个名为getReader的method. call()和 apply()是Function object 的两个方法, 它们也可以使一个function作为另一个对象的method来调用用. call()和apply()都需要参数, 而第一个参数就是调用对象, 也就是当function内部出现this时, this所指的对象. call()和apply()的区别在于call()可以传递任意长度参数, 只要第一个参数时调用对象. 而apply只接受两个参数, 需要将除调用对象外的所有参数放入一个数组中. 即:

function getBooksWithSameAuthor(form, to) {
var name = this.author;
var books = …
//get books written by name and from year “from” to year “to”
return books;
}

var abook = new Book(“JavaScript is Cool”, “tom”, 514);
var books = getBooksWithSameAuthor.call(abook, 1990, 2005);

var books = getBooksWithSameAuthor.apply(abook, [1990, 2005]);

当一个function不作为一个对象的method时, JavaScript会认为它是属于一个Globle Object对象的method, 这个 Globle Object在Browser中就是window类. 所以从这个角度来说, function和method又可以统一起来了.

Function object 还有一个非常重要的property: prototype. 它是一个predefined的prototype object. 当一个 Function用作对象的constructor时, protptype property将发挥作用,中文翻译叫原型. JavaScript的新对象就是通过function的原型来建立的. 同时我们还可以利用prototype来动态的向对象中添加属性, 如:

function Book (name, author, page) {
this.name = name;
this.author = author;
this.page = page;
}
var abook = new Book(“JavaScript is Cool”, “tom”, 514);

Book.prototype.getInfo = getInfo;
function getInfo() {
return this.name + ” written by ” + this.author + ” with ” + this.page + ” pages”;
}

alert(abook.getInfo());

这里有一个例子, 用prototype方法来实现callback:

Function.prototype.andThen=function(g) {
var f=this;
return function() {
f();g();
}
};

function Manager() {
this.callback=function () {}; // do nothing
this.registerCallback=function(callbackFunction) {
this.callback=(this.callback).andThen(callbackFunction);
}
}

var manager=new Manager();
manager.registerCallback(sayHi);
manager.registerCallback(sayBye);
manager.callback();

在网页设计与制作时,为了使制作出来的网页下载速度快、布局合理、浏览方便、和谐悦目,应注意哪些问题?

网页文件大小
页面布局
页面导航
图像大小
颜色搭配
背景图像

 

CSS+DIV开发Web页面的优势有哪些?

优点:
1)div+css,这个网页设计模式中,div承担了网页的内容,css承担了网页的样式。这样就使网页的内容和样式的分离开来。有利于页面的维护升级。
2)有助于提高搜索引擎亲和力(快速找到需要的数据,而不是像在table中一层层的查找)
3)有助于页面的重构(换皮肤如blog,直接套用另外一套样式就可以实现,而不用改动网页脚本。)
缺点:开发效率比较低

介绍一下JavaScript中的对象

JavaScript中的Object是一组数据的key-value的集合, 有点类似于 Java中的HashMap, 所有这些数据都是Object里的property. 通常情况下, JavaScript中建立一个对象用”new”加上constructor function来实现. 如new Date(), new Object()等.

var book = new Object();
book.name = “JavaScript is Cool”;
book.author = “tom”;
book.pages = 514;

上面例子中的name和page就是名为book的对象中的property. 我们可以用delete来删除Object中的 property: “delete book.name;”. 除了Object, Date等buildin的对象外, 我们可以写自己的 constructor function, 然后使用new就可以建立自己的对象. 如上面的book可以写成:

function Book (name, author, page) {
this.name = name;
this.author = author;
this.page = page;
}
var abook = new Book(“JavaScript is Cool”, “tom”, 514);