1、对于一个定义的js函数,如果调用时参数不够是未指定的参数会为undefined,而调用时参数多于函数的个数时,会忽略多出的参数如:
定义一个函数:
function m(p1,p2,p3){ alert(p1+"---"+p2+"-----"+p3) ; }以下面两种方式调用时:<input type="button" value="提交1" onclick="m(1,3)"> <input type="button" value="提交2" onclick="m(1,2,3,4,5)">
会返回:
1---3----undefined
1---2----3
2、form.submit is not a function
在使用js动态创建的表单中使用
var form = document.getElementById("attForm" + i); form.submit();结果总是报错,网上有的是有表单中有name=submit找了半天也没这个东西,后来又找啊找,发现form写成from了,
,
但报的错跟这个没啥关系,这是坑爹啊。
3、对于iframe中嵌套iframe最子层js要调用最顶级父窗口的js函数时,则采用多个parent叠加的方式访问,如
window.parent.parent.addTab("项目申报详细列表", 'eduadmin_declare_item_list.jsp?order=' + order, 'icon add-icon');
4、eval函数,通过字符串函数名来执行一个函数
function f1 (name){
// 1、eval用法(Java->Method->invoke)
eval("f2()") ;
} function f2(){
alert("function2") ;
}
5、delete关键字,在给对象添加一个属性后删除这个属性
function f1 (name){
var o = {} ;
o.name = "zhangsan" ;
alert(o.name) ;(zhangsan)
delete o.name ;
alert(o.name) ;(undefined)
}
本文探讨了JavaScript函数调用时参数的处理、动态创建表单提交问题、iframe嵌套中访问父级窗口函数的方法以及eval函数与delete关键字的应用。

被折叠的 条评论
为什么被折叠?



