1、对于一个定义的js函数,如果调用时参数不够是未指定的参数会为undefined,而调用时参数多于函数的个数时,会忽略多出的参数如:
定义一个函数:
function m(p1,p2,p3){ alert(p1+"---"+p2+"-----"+p3) ; }以下面两种方式调用时:<input type="button" value="提交1" οnclick="m(1,3)"> <input type="button" value="提交2" οnclick="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) }