1.js是什么,js和html 的开发如何结合?
JavaScript 是广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能。
通过DOM把HTML分析为节点来进行相应的结合开发。
2. 怎样添加、移除、移动、复制、创建和查找节点?
appendChlid添加节点;removeChild移除节点;cloneNode复制节点;createElement创建节点;getElementById,getElementsByTagName,getElementsByName查找节点
3. 怎样使用事件以及IE和DOM事件模型之间存在哪些主要差别?
4.面向对象编程:b怎么继承a?5. 看看下面alert的结果是什么?
function b(x, y, a) { arguments[2] = 10; alert(a); } b(1, 2, 3);
都是10
6. 请编写一个JavaScript函数 parseQueryString,它的用途是把URL参数解析为一个对象
var url="http://test.com/index.php?key0=0&key1=1&key2=2"; function parseQueryString(url) { var str=url.split("?")[1];//取右边的 var items=str.split("&"); var obj={}; var arr; for(var i=0;i<items.length;i++) { arr=items[i].split("="); obj[arr[0]]=arr[1]; } return obj; }
7.ajax是什么? ajax的交互模型? 同步和异步的区别? 如何解决跨域问题?
AJAX = Asynchronous JavaScript and XML异步刷新<html> <head> <mce:script id=”remoteScript” type=”text/javascript” src="””" mce_src="””" /> </head> <body> <script type=”text/javascript” > Var remoteScript=document.getElementById(‘remoteScript’); remoteScript.src=” www.baidu.com/xxxxx.do”;// 域 B 的链接 alert(remote.test);// 使用域 B 返回的 JSON 数据 alert(f[0]); </mce:script> </body> </html>
注意:这种方案要求域 B 返回的数据必须是合法的 JSON 格式或者如 JS 文件的格式。
3、隐藏 iframe: 即域 A jipiao.taobao.com/yyyy.htm 的页面上写一个隐藏的 iframe
这里列举的三种方案各有优缺点:
Proxy 方案优点是可以适用用于几乎所有的跨域访问,而且只需要要一个域中进行开发,另一个域可以提供任何类型格式的数据。缺点是这种方案经过了中间 Proxy ,所以延迟可能稍微大一点,并且会加重本域服务器的负荷,开发工作量也稍微大一点。
Script 标签的方案可以说是非常简单的,不用几行代码就搞定了事,不过它对返回的数据格式要求有点严格,只能是 Json 格式数据 , 如果是其他格式的数据,那么这种方法就无能为力了。
隐藏 iframe 方式也很简单,它可以处理任何返回的数据格式,但它只适用在具有同一个父域下的跨域请求上,并且要求其他域得配合开发,即需要设置 document.domain
使用闭包的注意点
1)由于闭包会使得函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭包,否则会造成网页的性能问题,在IE中可能导致内存泄露。解决方法是,在退出函数之前,将不使用的局部变量全部删除。
2)闭包会在父函数外部,改变父函数内部变量的值。所以,如果你把父函数当作对象(object)使用,把闭包当作它的公用方法(Public Method),把内部变量当作它的私有属性(private value),这时一定要小心,不要随便改变父函数内部变量的值。
<ul id=”test”><li>这是第一条</li><li>这是第二条</li><li>这是第三条</li></ul>