{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;
如何显示/隐藏一个 DOM 元素?
1.
更改元素的 css style,设为 display: none。此外还可以将 visibility 设为 hidden,透明度设
为 0,或长、宽设为 0。. `7 m: r9 n$ u7 k& ]
2.
主要的 HTML 标签及 CSS。
一个定宽网页在浏览器(IE6,IE7,Firefox,IE5)中横向居中对齐的布局,请写出
1. - u( r, J$ B'
L. k9 R2 w8 I9 M2 ]
2.
3.
4. & O1
f# u& J. g/ L
5. 居中
6. & @$ y* b0 H- D9 j8 p+ Q: X
11.
12.
13.
居中
5 Y! l6 S3 E/ O; N2 d' X
14.
15.
CSS 中 margin 和 padding 的区别$ Q& n1 o \) P0 |' ]
网页中实现一个计算当年还剩多少时间的倒数计时程序,要求网页上实时动态显示
如何控制网页在网络传输过程中的数据量; G- i- a q) \3 t# j$ _1 R
JavaScript 中如何检测一个变量是一个 String 类型?请写出函数实现 3 ^5 H3 { |2
复制代码
3.
margin 是外边距,属于元素之外,相邻元素的 margin 可以融合。4 W5 _+ M1 V J) I. e3 E2
V, P
padding 是内边距,在元素之内,相邻元素的 padding 不可融合。) @2 V9 W1 X7 {7 Y
4.
v7 E5 F5 x
function(obj) {; Z% ]6 f0 J: x5 W t5 x
return typeof(obj) == ”string”;$ B8 P9 B' c' ?: A
}
5.
“××年还剩××天××时××分××秒”
这个看我论坛右上角的就知道了…0 O0 f& I) |+ t, P
6.
题目貌似有问题,应该是减少数据量吧。; B9 l/ h6 u5 X) x l
最显著的方法是启用 GZIP 压缩。此外保持好的编码习惯,避免重复和 css、JavaScript 代
码,多余的 HTML 标签和属性。0 J" h/ T! y6 X v1 W/ x6 D
7.
var parent = this.parentNode; parent.removeChild(this); parent.appendChild(this);$ Q2 _5
[ x4 g8 k, e" r2 b
8.
不知道=。=; l n3 u3 p4 _6 `
9.
Flash 的缺点是需要客户端安装 Flash 插件,比较大,且更改了默认的 HTML 页面行为;但
可以方便地实现很多特效及动画,且具有较高权限。
Ajax 的缺点是编程较为复杂,需要服务器端的支持,能实现的效果只能是 DOM API 提供的,
权限很低,较难跨域;但可以显著加快页面的载入速度和用户体验。
此外,二者都不能被搜索引擎索引(Google 已支持 Flash 文本的索引),不利于 SEO。
我的建议是重要和关键部分直接用 HTML,交互部分可以使用 Ajax,复杂的动画可采用
补充代码,是鼠标单击后 Button1 到 Button2 的后面, c5 [0 }) }# p( @- ~
Linux 中,将 a、b 打包为 back.tar,命令是( )
Flash、Ajax 各自的优缺点,在使用中如何取舍?# h1 L% |/ p8 W
Flash。
1, 判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母、数字、下划线,
总长度为 5-20
var reg = /^[a-zA-Z][a-zA-Z_0-9]{4,19}$/;
reg.test("a1a__a1a__a1a__a1a__");
2,截取字符串 abcdefg 的 efg
var str = "abcdefg";
if (/efg/.test(str)) {
var efg = str.substr(str.indexOf("efg"), 3);
alert(efg);
}
3,判断一个字符串中出现次数最多的字符,统计这个次数
//将字符串的字符保存在一个 hash table 中,key 是字符,value 是这个字符出现的次数
var str = "abcdefgaddda";
var obj = {};
for (var i = 0, l = str.length; i < l; i++) {
var key = str[i];
if (!obj[key]) {
obj[key] = 1;
} else {
obj[key]++;
}
}
/*遍历这个 hash table,获取 value 最大的 key 和 value*/
var max = -1;
var max_key = "";
var key;
for (key in obj) {
if (max < obj[key]) {
max = obj[key];
max_key = key;
}
}
alert("max:"+max+" max_key:"+max_key);
4,IE 与 FF 脚本兼容性问题
(1) window.event:
表示当前的事件对象,IE 有这个对象,FF 没有,FF 通过给事件处理函数传递事件对象
(2) 获取事件源
IE 用 e[“srcElement”] 获取事件源,而 FF 用 e[“target“] 获取事件源
(3) 添加,去除事件
IE:element.attachEvent(“onclick”, function) element.detachEvent(“onclick”, function)
FF:element.addEventListener(“click”, function, true) element.removeEventListener(“click”,
function, true)
(4) 获取标签的自定义属性
IE:div1.value 或 div1[“value”]
FF:可用 div1.getAttribute(“value”)
(5) document.getElementsByName()和 document.all[name]
IE;document.getElementsByName()和 document.all[name]均不能获取 div 元素
FF:可以
(6) input.type 的属性
IE:input.type 只读
FF:input.type 可读写
(7) innerText textContent outerHTML
IE:支持 innerText, outerHTML
FF:支持 textContent
(8) 是否可用 id 代替 HTML 元素
IE:可以用 id 来代替 HTML 元素
FF:不可以
这里只列出了常见的,还有不少,更多的介绍可以参看 JavaScript 在 IE 浏览器和 Firefox
浏览器中的差异总结
5,规避 javascript 多人开发函数重名问题
(1) 可以开发前规定命名规范,根据不同开发人员开发的功能在函数前加前缀
(2) 将每个开发人员的函数封装到类中,调用的时候就调用类的函数,即使函数重名只要类
名不重复就 ok
6,javascript 面向对象中继承实现
javascript 面向对象中的继承实现一般都使用到了构造函数和 Prototype 原型链,简单的代
码如下:
function Animal(name) {
this.name = name;
}
Animal.prototype.getName = function() {alert(this.name)}
function Dog() {};
Dog.prototype = new Animal("Buddy");
Dog.prototype.constructor = Dog;
var dog = new Dog();
7,FF 下面实现 outerHTML
FF 不支持 outerHTML,要实现 outerHTML 还需要特殊处理
思路如下:
在页面中添加一个新的元素 A,克隆一份需要获取 outerHTML 的元素,将这个元素 append
到新的 A 中,然后获取 A 的 innerHTML 就可以了。
获取 outerHMTL
SPANDIV
SPAN
P
8,编写一个方法 求一个字符串的字节长度
假设:
一个英文字符占用一个字节,一个中文字符占用两个字节
function GetBytes(str){
var len = str.length;
var bytes = len;
for(var i=0; i 255) bytes++;
}
return bytes;
}
alert(GetBytes("你好,as"));
9,编写一个方法 去掉一个数组的重复元素
var arr = [1 ,1 ,2, 3, 3, 2, 1];
Array.prototype.unique = function(){
var ret = [];
var o = {};
var len = this.length;
for (var i=0; i
(2)构造函数
function Animal(name, color) {
this.name = name;
this.color = color;
}
(3)
(4)CSS expression 表达式中使用 this 关键字
div element
12,如何显示/隐藏一个 DOM 元素?
el.style.display = "";//显示 el.style.visibility= "visible ";
el.style.display = "none";//隐藏 el.style.visibility= "hidden ";
el 是要操作的 DOM 元素
区别:visibility 设置为 hidden 时,元素依然占有原来的位置
13,JavaScript 中如何检测一个变量是一个 String 类型?请写出函数实现
String 类型有两种生成方式:
(1)Var str = “hello world”;
(2)Var str2 = new String(“hello world”);
function IsString(str){