草庐IT

引用丢失

全部标签

javascript - 通过窗口对象引用全局变量时未定义的全局变量

我对通过window全局声明变量还很陌生,所以我有点惊讶以下代码片段的行为因浏览器而异。window.test="Good";document.write(window.test);document.write('');document.write(window.test);document.write('');document.write(test);​Firefox、IE、OperaGoodundefinedGoodChrome和SafariGoodGoodGood我最初认为它应该像Chrome和Safari那样运行,但我意识到我可能没有正确理解window对象,所以有没有更懂行的

javascript - 引用导入的 es6 类的正确 JSDOC 语法是什么?

我正在尝试找出在JSDOC中将外部类指定为参数/返回的正确语法。所以,例如,我有:importreduxfrom'redux';/***@param{object}state*@return{{module:redux.Store}}*/exportfunctioninitState(state=initialState){store=redux.createStore(theReducer,Immutable.fromJS(state));returnstore;}问题是,如果我在webstorm中使用它,Store上的“GoToDeclaration”会将我带到完全不相关的地方。这

javascript - 我是如何丢失 JavaScript 内置对象和所有全局变量的?

我正在处理一个需要在大型浏览器(包括IE11)中运行的Umbraco站点,我遇到了一个只能在IE11上复制的奇怪问题。在某些时候,TinyMCE插件的脚本会尝试执行此代码(大约调用四次)以响应blur事件:functionclassTest(cls){returnnewRegExp("(^|\\s)"+cls+"(?:$|\\s)\\s*");}并且在尝试创建RegExp对象时抛出“对象不支持此操作”异常。cls已定义并且具有我期望的值。在未处理的异常上暂停(使用VisualStudio调试器)时,我做了一些检查。原来RegExp是undefined。我发现这非常很奇怪。更多的调查显示

javascript - 为什么在未声明的对象属性的情况下不会出现引用异常?

这个问题在这里已经有了答案:Whydoesreferencingundeclaredvariablesthrowareferenceexceptionbutreferencingundeclaredpropertiesdoesn't?(1个回答)关闭5年前。在JS中,对未声明的变量进行读取访问会导致引用异常。我尝试了以下代码:varobj={};console.log(obj.v1);这打印未定义console.log(v2);虽然这会抛出异常。不同行为的原因是什么?由于v1和v2均未声明,我预计这两种情况都会出现异常。编辑:更令人困惑的是,如果v2在全局范围内声明,它将成为windo

javascript - 更改大小后 Canvas 状态丢失

我想调整Canvas大小,但当我这样做时,上下文被重置,丢失当前的fillStyle、转换矩阵等。ctx.save()并且ctx.restore()函数没有像我最初预期的那样工作:functionresizeCanvas(newWidth,newHeight){ctx.save();canvas.width=newWidth;//Resetscontext,includingthesavestatecanvas.height=newHeight;ctx.restore();//contextsavestackisempty,thisdoesnothing}研究了一段时间,我似乎找不到一

javascript - Chrome.History 获取引用 URL (JS)

我想写一个chrome扩展程序,它不仅可以列出历史记录中访问过的URL,还可以列出引用URL。例如,如果我从谷歌点击维基百科,它应该说“维基百科:由谷歌引用”。我最初的尝试是为有问题的URL获取一个HistoryItem,提取其最近的VisitItem,然后使用referringVisitId来追踪初始URL,但这正是我遇到困难的地方。我的问题归结为不理解referringVisitId的含义。是打开新页面的历史条目的ID吗?是URL点击发起的VisitItem的ID吗?文档指出它是“推荐人的访问ID”,但这仍然让我感到困惑。1)referringVisitId是什么意思?2)我可以使

javascript - Angular ui-select 标记在模糊时丢失文本输入

情况大家好!我正在使用Angularui-select对于我的应用程序,以便从数据库中选择用户。如果用户不在列表中,则可以使用标记输入新条目。通过输入名称并按ENTER或TAB键,新条目将保存为新标签。除一件小事外一切正常:如果我用鼠标聚焦,我会丢失我输入的输入,这对用户来说不是很友好。代码Arrayofobjects{{$item.name}}<{{$item.email}}>email:{{person.email}}age:Selected:{{multipleDemo.selectedPeople}}插入器http://plnkr.co/edit/7fSAKmj3p

javascript - angularjs如何引用模块加载依赖

我有一个主模块,加载ngRoute服务。angular.module("app",["ngRoute","app.settings"]我的app.settings模块没有加载ngRoute服务,angular.module("app.settings",[]).config(["$routeProvider",function($routeProvider){$routeProvider.when("/settings",{template:"{{message}}",controller:"SettingsController"});}])但是我可以在这个模块中使用$routePro

javascript - 引用错误 : notOk is not defined

我使用QUnit进行JavaScript单元测试,已经进行了很多测试。他们中的大多数使用断言的方式:ok(condition.isTrue());这些测试在VisualStudio嵌入式测试系统(在“测试资源管理器”中)和“外部”QUnit引擎(通过单击“QUnit测试(单击运行)”上下文菜单调用,如果你向左打圆圈进入QUnit测试)。但是如果我以另一种方式使用断言:notOk(condition.isFalse());然后测试仅在VisualStudio测试系统内部运行良好,而尝试通过QUnit运行测试会出现以下错误:Diedontest#1athttp://localhost:64

javascript - ckeditor getData() 在源模式下返回陈旧数据(最后一次更改丢失)

尝试在http://ckeditor.com/demo上输入源代码模式调试使用CKEDITOR.instances["editor1"].on("key",function(e){console.log("change:"+e.editor.getData())})在控制台中我总是在控制台中看到少一个字符,所以如果我输入abc我会看到ab注意:因为https://dev.ckeditor.com/ticket/12031Guidelines而使用按键事件和HowtodetectCKEditorsourcemodeonchangeevent 最佳答案