概要:答的不好正确答案:// 1. 构造器function animal() {};function mammal() {};function canine() {};function dog() {};// 2. 原型链表mammal.prototype = new animal();canine.prototype = new mammal();dog.prototype = new canine();prototype.js实现的基本原理答:将功能封装比如ajax.request,还是有判断浏览器的代码;position这样的实现页面元素位置的计算prototye太大,如果一个页面功能不需要这样的,自己实现,怎么做答:首先页面、css、脚本分离之后,脚本中将整个模块功能写成一个类var do={}其中初始化函数init:function(){},然后最后做do.init()其中init会对页面上form中需要交互的元素绑定事件,比如$(’input1′).onclick=function(){}ie、ff下面脚本的区别答:1.ie有outer
互联网公司招聘web前端笔试题目,标签:笔试大全,http://www.88haoxue.com答的不好
正确答案:
// 1. 构造器
function animal() {};
function mammal() {};
function canine() {};
function dog() {};
// 2. 原型链表
mammal.prototype = new animal();
canine.prototype = new mammal();
dog.prototype = new canine();
prototype.js实现的基本原理
答:
将功能封装
比如ajax.request,还是有判断浏览器的代码;position这样的实现页面元素位置的计算
prototye太大,如果一个页面功能不需要这样的,自己实现,怎么做
答:首先页面、css、脚本分离之后,脚本中将整个模块功能写成一个类var do={}
其中初始化函数init:function(){},然后最后做do.init()
其中init会对页面上form中需要交互的元素绑定事件,比如$(’input1′).onclick=function(){}
ie、ff下面脚本的区别
答:
1.ie有outerhtml,ff没有
2.页面元素id,ie可以直接取,ff必须document.getelementbyid()
3.ajax里边ff是new xmlhttprequest,而ie是
try new activexobject(’msxml2.xmlhttp’) try new activexobject(’microsoft.xmlhttp’)
ff下面实现outerhtml
答:.parenet.firstchild .parent.innerhtml
这个没答好
正确答案:原理是,get:取到这个标签的tagname,然后属性循环构造成这个标签的属性
set:把字符串用insertbefore插入到这个元素前面,然后removechild这个元素
ie、ff下面css的解释区别
答:
1.png透明背景,ff下面没有问题,ie需要用滤镜通道
2.z-index在ie、ff下面的解释问题,
ie会认为第一个z-index=0
3.长字符串,word-wrap:break-all可以解决ie,但是ff需要overflow:hidden才行
冯舒娅补充:
1、有些标签在ff中不能用,比如button
2、滤镜
3、鼠标cursor:hand cursor:pointer
4、div的高度自适应
5、对box模型解析不一样
6、ul、ol的padding和margin
ie都能识别*,标准浏览器(如ff)不能识别*;
ie6能识别*,但不能识别 !important;
ie7能识别*,也能识别 !important;
ff不能识别*,但能识别 !important;
例如style=”*width:10px;!important width:20px;”
这样在ie6下宽度为10px,在ie7下宽度时20px
web前端技术的展望
答:javascript ajax;flash as;flex;sliveright
附上网上的百度web开发工程师笔试问题集
1编写一个方法 求一个字符串的字节长度
2编写一个方法 去掉一个数组的重复元素
3说出3条以上ff和ie的脚本兼容问题
ie 有children,ff没有;ie有parentelement,ff没有;ie有innertext,outertext,outerhtml,ff 没有;ff有htmlelement,htmldivelement,xmldocument,documentfragment,node, event,element等等,ie没有;ie有数据岛,ff没有;ie跟ff创建httprequest实例的方法不一样。。等等。。
4用脚本写去除字符串的前后空格
string.prototype.trim = function(mode)
{//前后去空格
if (mode==’left’) {
return ((this.charat(0) == ” “ && this.length > 0) ? this.slice(1).trim(’left’) : this);
} else
if (mode == ’right’) {
return ((this.charat(this.length - 1) == ” “ && this.length > 0) ? this.slice(0, this.length - 1).trim(’right’) : this);
} else {
return this.trim(’left’).trim(’right’);
}
};
5算出字符串中出现次数最多的字符是什么,出现了多少次
6写出3中使用this的典型应用
在html元素事件属性中inline方式使用this关键字:
7.最后一个问题是,如何制作一个combo选项,就是可以输入可以下拉菜单选择。
这个网上有很多成品,主要是通过绝对定位和相对定位结合的方式,改造原有的select 标签和input标签的方法。
附上javascript正则表达式的基本知识:
g: 全局匹配
i: 忽略大小写
^ 匹配一个输入或一行的开头,/^a/匹配”an a”,而不匹配”an a”
$ 匹配一个输入或一行的结尾,/a$/匹配”an a”,而不匹配”an a”
* 匹配前面元字符0次或多次,/ba*/将匹配b,ba,baa,baaa
+ 匹配前面元字符1次或多次,/ba*/将匹配ba,baa,baaa
? 匹配前面元字符0次或1次,/ba*/将匹配b,ba
(x) 匹配x保存x在名为$1…$9的变量中
x|y 匹配x或y
{n} 精确匹配n次
{n,} 匹配n次以上
{n,m} 匹配n-m次
[xyz] 字符集(character set),匹配这个集合中的任一一个字符(或元字符)
[^xyz] 不匹配这个集合中的任何一个字符
[b] 匹配一个退格符
b 匹配一个单词的边界
b 匹配一个单词的非边界
cx 这儿,x是一个控制符,/cm/匹配ctrl-m
d 匹配一个字数字符,/d/ = /[0-9]/
d 匹配一个非字数字符,/d/ = /[^0-9]/
n 匹配一个换行符
r 匹配一个回车符
s 匹配一个空白字符,包括n,r,f,t,v等
s 匹配一个非空白字符,等于/[^nfrtv]/
t 匹配一个制表符
v 匹配一个重直制表符
w 匹配一个可以组成单词的字符(alphanumeric,这是我的意译,含数字),包括下划线,如[w]匹配”$5.98′中的5,等于[a-za-z0-9]
w 匹配一个不可以组成单词的字符,如[w]匹配”$5.98′中的$,等于[^a-za-z0-9
举例:验证email
var myreg = /^[_a-z0-9]+@([_a-z0-9]+.)+[a-z0-9]{2,3}$/;
if(myreg.test(stremail)) return true;
最新更新