草庐IT

block_until_this_function_has_bee

全部标签

javascript - 为什么需要匿名函数来使用 setTimeout 保留 "this"

我已经多次使用setTimeout传递函数作为引用,例如setTimeout(someFunction,3000);在某些情况下,为了保留this的值,我不得不事先将其分配给一个变量,但不明白为什么以下内容不起作用:varlogger={log:function(){varthat=this;console.log(that.msg);setTimeout(that.log,3000);},msg:"test"};logger.log();然而,使用匿名函数确实有效:varlogger={log:function(){varthat=this;console.log(that.msg)

Javascript:typeof 说 "function"但它不能作为函数调用

这次我真的对Javascript很困惑:varx=Array.prototype.concat.call;typeofx;//functionx();//UncaughtTypeError:xisnotafunction这到底是怎么回事?如果有帮助,我还注意到:x([1,2],[3,4])也不行toString也认为是一个函数:Object.prototype.toString.call(x);//"[objectFunction]"Array.prototype.concat.apply也会发生这种情况。当它被强制作为一个表达式时它也不起作用:(0,Array.prototype.c

JavaScript document.domain 未捕获的 DOMException : Blocked a frame with origin

当我测试SOP时,我遇到了这种情况,两个文档与我预期的相同域有关系,当我尝试获取位置时它会抛出错误。重现问题:打开https://www.google.com从控制台letopened=window.open("https://www.google.com")在同一个窗口执行opened.location.toString(),这将返回正确的位置从第二个选项卡的控制台执行document.domain="www.google.com"从第一个选项卡开始执行opened.location.toString()并且您会得到一个错误UncaughtDOMException:Blockedaf

javascript - 我在 Chrome 中收到 "Canvas has been tainted"错误,但在 FF 中没有

我的Javascript实现有问题。该脚本将在Firefox中运行,但在Chrome中它会显示:Unabletogetimagedatafromcanvasbecausethecanvashasbeentaintedbycross-origindata.index.html:1UncaughtError:SecurityError:DOMException18有谁知道造成这种不一致行为的原因是什么? 最佳答案 Chrome不认为不同的本地文件来自同一域。也就是说,您通过file://URL引用的每个本地文件都被视为来自与其他file

javascript - 我如何检查 after block 中是否有任何 mocha 测试失败?

describe('sometests',function(){/**Runsometests...*/})after(function(){failures=?//如果测试失败,我会用它来保持chromedriver的浏览器打开,并返回到reportsuccessorfailuretosaucelabs.Mocha的运行者和记者havetheinfoI'mlookingfor作为stats但我不确定如何从测试文件中获取它们。 最佳答案 我找到了这个问题的答案hereafterEach(function(){if(this.curr

javascript - React.JS this.state 未定义

我目前在React.JS中有这个组件,它在数组中显示传递给它的所有图像,onMouseOver它在下面显示一个按钮。我计划使用setState检查变量hover是真还是假,并相应地切换该图像的按钮,但是我不断收到以下错误:UncaughtTypeError:Cannotreadproperty'state'ofundefinedvarImageList=React.createClass({getInitialState:function(){returnthis.state={hover:false};},getComponent:function(index){console.lo

javascript - 未捕获的类型错误 : lang is not a function

这个问题在这里已经有了答案:JSfunctionnamed`animate`doesn'tworkinChrome,butworksinIE(3个答案)关闭6年前。在我的HTML中,我在script标签中定义了lang函数并添加了“TestFire!”单击时必须调用lang的按钮:TestingFunctionsfunctionlang(){alert("Hello,World!It'sJavaScriptthistime");}但是,如果我点击按钮,我会得到这个错误:UncaughtTypeError:langisnotafunction但是,如果我将函数名称从lang更改为任何其他

javascript - 类型错误 : scrollIntoView is not a function

我是react-testing-library/jest的新手,正在尝试编写测试以查看路由导航(使用react-router-dom)是否正确执行。到目前为止,我一直在关注README还有这个tutorial关于如何使用。我的一个组件在本地函数中使用了scrollIntoView,这导致测试失败。TypeError:this.messagesEnd.scrollIntoViewisnotafunction45|46|scrollToBottom=()=>{>47|this.messagesEnd.scrollIntoView({behavior:"smooth"});|^48|}49|

javascript - TypeError [ERR_INVALID_ARG_TYPE] : The "original" argument must be of type Function. 接收类型未定义

在下面的代码中,我得到了这个错误:TypeError[ERR_INVALID_ARG_TYPE]:The"original"argumentmustbeoftypeFunction.Receivedtypeundefinedconstsqlite3=require('sqlite3').verbose();constutil=require('util');asyncfunctiongetDB(){returnnewPromise(function(resolve,reject){letdb=newsqlite3.Database('./project.db',(err)=>{if(e

javascript - Jquery - 使用 "this"获取属性

这可能是一件非常简单的事情,但我似乎无法让它工作,我也不确定为什么。我安装了jquery,当我点击它时,我试图获取“this”元素的属性。现在我的代码如下所示:url=$(this).attr("href")当我通过单击链接调用此函数时,它告诉我变量“url”未定义。所以很明显,当我点击链接时,它并没有接收到“this”。我正在尝试传递anchor标记的href以用作我的变量。我忽略了什么?再一次,我知道这很简单,但我似乎无法弄清楚所以感谢您花时间帮助我。谢谢。url="push1";$("a").live("click",function(event){event.preventDe