b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

深入理解Javascript动态方式读取与参数设置的问题

电脑杂谈  发布时间:2020-03-10 03:00:58  来源:网络整理

方法调用方法_动态方法调用 为什么不安全_动态链接库 动态调用

Javascript中可以对所传参数在变量内进行更改动态方法调用 为什么不安全,如下


function func1(name) {
 name = 'lily';
 alert(name);

动态链接库 动态调用_方法调用方法_动态方法调用 为什么不安全

} func1('jack');//输出lily

再看一个例子


方法调用方法_动态链接库 动态调用_动态方法调用 为什么不安全

function fun1(n) { this.name = n; } function fun2(name) { fun1.call(this,'lily'); alert(name); }

动态链接库 动态调用_方法调用方法_动态方法调用 为什么不安全

fun2("jack");//输出"jack"

fun1函数想把fun2调用时的参数设置为“lily”,但没有成功。弹出的依然是“jack”。思考下为什么?

实际上fun1还是有能力把fun2调用时的参数给修改掉的动态方法调用 为什么不安全,利用caller属性


动态链接库 动态调用_动态方法调用 为什么不安全_方法调用方法

function fun1() { arguments.callee.caller.arguments[0] = 'lily'; } function fun2(name) { fun1.call(this,name); alert(name); } fun2("jack");//输出"lily"

可见,外层函数对于内层函数的调用栈是可见的,可修改的。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-143620-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...