你对javascript熟悉吗?一道趣味题看你熟悉不熟悉
这是一道涵盖了初级、高级javascript
的趣味
题目,如果你在不运行程序
的条件下能正确回答下面的函数
调用的结果,那么你对javascript的理解应该比较到位了,至少我(http://www.attjs.com
站长)是这样认为的。
主要涉及javascript面向对象特性、重载、覆盖、作用域、函数特性、还有一个相对与C/C++
java特有的一个特性、优先级等JS技术
记住哦,最好不要运行代码
哦。
自评:
不运行代码而能搞定所用问题者,说明你对javascript的运行机制有深刻的理解。
如果运行了代码才能搞定问题者,说明你对你技术还持有怀疑态度,至少说明你在某些技术层面还存在问题。
如果运行了代码还不能正确回答问题着,说明你对javascript的理解还没有完全到位。
请大家注册
一个号,在下面写下你们的答案,我会为你们判断答案,不要仅写个答案,最好写出理由
。
大家可以互相参考下回帖,最终得出个正确的答案。
我相信通过此题目,大家的javascript水平或多或少都可以提高一些。
1. <mce:script type="text/javascript"><!--
2. var attjs=function(){
3. attjs.abc=function(){alert("1");};
4. attjs.prototype.abc=function(){alert("2");};
5. this.abc=function(){alert("3")};
6. function abc(){
7. alert("4");
8. }
9. var abc=function(){alert("5")};
10. }
11. attjs.abc=function(){alert("6");};
12. attjs.prototype.abc=function(){alert("7");};
13. function abc(){
14. alert("9");
15. }
16. var oAttjs=new attjs();
17. attjs.prototype.abc=function(){alert("11");};
18. //问题1
19. oAttjs.abc();
20. oAttjs.abc=function(){alert("10");};
21. //问题2
22. oAttjs.abc();
23. //问题3
24. attjs.abc();
25. attjs.abc=function(){alert("66");};
26. //问题4
27. attjs.abc();
28. //问题5
29. abc();
30. function abc(a){
31. alert("14");
32. }
33. function abc(a,b){alert("15")}
34. //问题6
35. abc("");
36. //问题7
37. abc("","");
38. var abc=function(){alert("12"
相关文档:
正则表达式
RegExp(regexp, option)类实现,可以简写成/regexp/option
option:
g: global, i: ignore case
方法:string.test(regexp),
string.exec(regexp)[返回所有匹配的地方], string.serch(regexp)[正则版的indexOf()],
string.replace(regexp, str|funtion), string.split(regexp)
简单模式
元字符:( [ {
......
//1.类
function Test(id)
{
this.id=id;
this.method=function()
{
//代码
};
}
......
要想写出跨浏览器的javascript,就必须懂得嗅探技术。这是浏览器大战遗留下的大地雷,事已如此,只好认命,乖乖写分支结构吧,函数就是这样不知不觉中变长的。
先看单一浏览器的判断,我们没有必须去找navigator.userAgent的麻烦,我在国外的博客网站收集了如下hack,短小精悍:
ie = !+"\v1" ;
ie ='\v'=='v' ; ......
1:js 字符串长度限制、判断字符长度 、js限制输入、限制不能输入、textarea 长度限制
2.:js判断汉字、判断是否汉字 、只能输入汉字
3:js判断是否输入英文、只能输入英文
4:js只能输入数字,判断数字、验证数字、检测数字、判断是否为数字、只能输入数字
5:只能输入英文字符和数字
6: js email验证 、js 判断 ......
<!--
/* Font Definitions */
@font-face
{font-family:宋体;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"\@宋体" ......