GVKun编程网logo

TypeError:console.log.apply上的非法调用(显示非法调用)

6

在本文中,我们将带你了解TypeError:console.log.apply上的非法调用在这篇文章中,我们将为您详细介绍TypeError:console.log.apply上的非法调用的方方面面,

在本文中,我们将带你了解TypeError:console.log.apply上的非法调用在这篇文章中,我们将为您详细介绍TypeError:console.log.apply上的非法调用的方方面面,并解答显示非法调用常见的疑惑,同时我们还将给您一些技巧,以帮助您实现更有效的angularjs – ng-file-upload getting TypeError:使用ngf-drop进行非法调用、Chrome中的“未捕获的TypeError:非法调用”、console.log.apply的问题、Discord.js - TypeError:client.on 不是函数

本文目录一览:

TypeError:console.log.apply上的非法调用(显示非法调用)

TypeError:console.log.apply上的非法调用(显示非法调用)

如果您在chrome控制台中运行此命令:

console.log.apply(null, [array])

Chrome给您返回错误:

// TypeError: Illegal Invocation

为什么? (通过OSX在Chrome 15上测试)

答案1

小编典典

当执行上下文从控制台更改为任何其他对象时,它可能不起作用:

这是可以预期的,因为console.info希望其“ this”引用是控制台,而不是窗口。

 console.info("stuff") stuff undefined console.info.call(this, "stuff") TypeError: Illegal invocation console.info.call(console, "stuff") stuff undefined

此行为是预期的。

angularjs – ng-file-upload getting TypeError:使用ngf-drop进行非法调用

angularjs – ng-file-upload getting TypeError:使用ngf-drop进行非法调用

TypeError:在包含ngf-drop使用的文件属性的模型上将objectEquality设置为true的$watch添加时发生非法调用.

另据报道here.

如何在不收到此错误的情况下观看模型?

解决方法

我不得不说,不要尝试深入观察复杂的物体,这意味着:

$scope.$watch('aComplexObject',function(newVal,oldVal) {
    // ...
},true); // <<< this 'true' may cause the error.

Chrome中的“未捕获的TypeError:非法调用”

Chrome中的“未捕获的TypeError:非法调用”

如何解决Chrome中的“未捕获的TypeError:非法调用”?

在您的代码中,您正在将本机方法分配给自定义对象的属性。当您调用时support.animationFrame(function () {}),它将在当前对象(即支持)的上下文中执行。为了使本机requestAnimationFrame函数正常工作,必须在的上下文中执行它window

因此,此处的正确用法是 support.animationFrame.call(window, function() {});

警报也会发生相同的情况:

var myObj = {
  myAlert : alert //copying native alert to an object
};

myObj.myAlert(''this is an alert''); //is illegal
myObj.myAlert.call(window, ''this is an alert''); // executing in context of window

另一个选择是使用Function.prototype.bind(),它是ES5标准的一部分,并且在所有现代浏览器中都可用。

var _raf = window.requestAnimationFrame ||
        window.mozRequestAnimationFrame ||
        window.webkitRequestAnimationFrame ||
        window.msRequestAnimationFrame ||
        window.oRequestAnimationFrame;

var support = {
   animationFrame: _raf ? _raf.bind(window) : null
};

解决方法

当我用requestAnimationFrame下面的代码来做一些本机支持的动画时:

var support = {
    animationFrame: window.requestAnimationFrame ||
        window.mozRequestAnimationFrame ||
        window.webkitRequestAnimationFrame ||
        window.msRequestAnimationFrame ||
        window.oRequestAnimationFrame
};

support.animationFrame(function() {}); //error

support.animationFrame.call(window,function() {}); //right

直接致电support.animationFrame会给…

未捕获的TypeError:非法调用

在Chrome中。为什么?

console.log.apply的问题

console.log.apply的问题

今天试着执行:

        if (window.console && console.log){
            var args = Array.prototype.slice.call(arguments);
            console.log.apply(null, args);
    }

发现报错:

TypeError: Illegal invocation

在网上搜了搜找到 答案 。

原因就是console的this对象不能更換,把上面的null改为console就可以了。

Discord.js - TypeError:client.on 不是函数

Discord.js - TypeError:client.on 不是函数

您没有正确创建 client。您需要在 event code 的最顶部添加:

const Discord = require('discord.js');
const client = new Discord.Client();
,

您没有正确声明“客户端”,请确保添加此 -

const { Client }= require('discord');
const client = new Client()

关于TypeError:console.log.apply上的非法调用显示非法调用的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于angularjs – ng-file-upload getting TypeError:使用ngf-drop进行非法调用、Chrome中的“未捕获的TypeError:非法调用”、console.log.apply的问题、Discord.js - TypeError:client.on 不是函数等相关内容,可以在本站寻找。

本文标签: