码迷,mamicode.com
首页 > 其他好文 > 详细

还是函数劫持。。

时间:2018-01-23 15:44:19      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:return   his   string   阅读   dep   gpo   color   str   执行   

阅读depd源码有感:

            var fn = function(a, b, c) {
                return a + b + c;
            }
            var args = createArgumentsString(fn.length)

            function createArgumentsString(arity) {
                var str = ‘‘

                for(var i = 0; i < arity; i++) {
                    str += ‘, arg‘ + i
                }

                return str.substr(2)
            }
            console.log(args);
            var deprecatedfn = eval(‘(function (‘ + args + ‘) {\n‘ +
                ‘"use strict"\n‘ +
                ‘return fn.apply(this, arguments)\n‘ +
                ‘})‘)
            console.log(deprecatedfn(1,5,3));

js虽然不能在函数外直接拿到参数,但是可以通过这种伪装函数拿到参数再去执行原函数,从而实现函数劫持。

还是函数劫持。。

标签:return   his   string   阅读   dep   gpo   color   str   执行   

原文地址:https://www.cnblogs.com/chyblog/p/8335744.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!