文档介绍:Web前端幵发笔试题(Javascript篇)
判断字符串是否是这样组成的,第一个必须是字母, 后面可以是字母、数字、下划线,总长度为5-20
varreg=/A[a—zA—Z][a-zA-Z 0-9] {4,19}$/;
十卜
//
ala ala ala ala 〃);
取字符串abcdefg的efg
varstr=〃abcdefg〃:
if (/efg/.test (str)) { varefg=((/zefg/z), 3): alert (e fg);
判断一个字符串中出现次数最多的字符,统计这个次
数
//将字符串的字符保存在一个hashtabl e中,key是字符,value是这个字符出现的次数
varst r =〃abcdefg ad dda〃; va robj ={};
for (v ari=0, 1=; iv ark ey二str [i ]; if (type ofobj [key]==’ undefined J) {
obj[ke y] = l: }else { ob j[key]++;
/*遍历这个has ht able,获取va 1 ue最大的key和v alue*/ varma x=-l; varm ax _key= ; var key;
f or (key inob j) {
if (m ax max=obj [key];
max_key =key;
}
}
a 1 ert ("max: //+max+//max _ke y: /z+max _key );
IE与FF脚本兼容性问题(1):
表示当前的事件对象,IE有这个对象,FF没有,F F 通过给事件处理函数传递事件对象
获取事件源
IE用s rcE lement获取事件源,而FF用t arget获取事件源
添加,去除事件
IE: ( “0 nclick,’, fu notion) ( “on click”, func tion)
FF : ( “click”, fun ction, t rue) ( “clic k”, fu nctio n, true )
(4)获取标签的自定义属性
IE:或 divl [ “value”]
FF :可用(“value ”)
⑸()和[nam e]
IE ; 0和[name]均不能获取d iv元素 FF:可以(6)的属性 IE:只读 FF:可读写
(7) in nerTexttex t Contentou te rHTML
IE:支持 inner Text, outer HTML FF :支持textCont en t (8)是否可用i d代替HTML元素 IE:可以用id来代替HTML元素 FF:不可以
这里只列出了常见的,还有不少,就不一一列出了….
规避java scr ipt多人幵发函数重名问题
可以开发前规定命名规范,根据不同开发人员开发
的功能在函数前加前缀
(2)将每个开发人员的函数封装到类中,调用的时候就
调用类的函数,即使函数重名只要类名不重复就ok javascr ip t面向对象中继承实现
//javasc ript面向对象中的继承实现一般都使用到了构造函数和Proto type原型链,简单的代码如下:
//(I)对象继承方法
Functi onA nimal (na me ) {
=name;
=function() {alert ()}
VarDog=n ewA nimal ( “Budd y”);
//(l)方法继承方法
funct io nAnimal (n a me) {
=name;
}
=function () {alert ()}
f unction DogO {};
=newAni mal (〃Buddy〃);
=Dog;
vard o g=newDog();
FF下面实现oute rHTML
FF不支持outerHT ML,要实现oute rHTM L还需要特殊
处理
思路如下:
在页面中添加一个新的元素A,克隆一份需要获取 outerHT ML的元素,将这个元素append到新的A中,然后获取A的inn e rHTML就可以了。
sdfshd fkls jdafkl sajdf : lajk ; df jkl sjdf k
编写一个方法求一个字符串的字节长度/*假设:
一个英文字符占用一个字节一个中文字符占用两个字节*/
(functi onge tByte(str) { varnu m=0;
for (vari=0, 1=; iif ((i) >2 55) { num+=2 ;
}else {
num ++:
aler t (n