草庐IT

self-assignment

全部标签

javascript - flowtype 绑定(bind)导致错误 `Convariant property incompatible with contravariant use in assignment of property`

这个表达式对于javascript/react来说非常简单,将函数绑定(bind)到this范围。this.toggle=this.toggle.bind(this);但是当引入flowtype时,会导致错误:我该怎么做才能通过流量测试?toggle可以是任何函数,甚至可以是空函数。toggle(){///donothing} 最佳答案 你必须在你的类中将你的toggle声明为Function(紧凑的方式):classFoo{toggle:Function=(){...}}或者,您可以将签名和实际方法分开:classFoo{togg

javascript - self 在 jquery/javascript 中有什么用?

在javascript中,他们使用如下:varself=this;varjquery_element=$(html_element);self.jquery_element=jquery_elemnet为什么我们在javascript中使用这些。我从OpenStackhorizon得到这段代码 最佳答案 varself=this;在您有嵌套函数并且this可能变得不明确时很有用(以防您不知道this是一个javascript关键字)。self仍可用于更改this,它现在从内部函数引用this。varjquery_element=$(

带有嵌入式 Ruby : How to safely assign a ruby value to a javascript variable 的 Javascript

我在页面的javascriptblock中有这一行:res=foo('');处理@ruby_var中有单引号的情况的最佳方法是什么?否则它会破坏JavaScript代码。 最佳答案 我想我会使用rubyJSON@ruby_var上的库,为字符串获取正确的js语法并去掉'',fex.:res=foo()(在require"json"'ing之后,不完全确定如何在页面中执行此操作,或者上述语法是否正确,因为我没有使用该模板语言)(另一方面,如果JSON曾经更改为与js不兼容,那将会中断,但由于大量代码使用eval()来评估json,我怀

javascript - 使用 var self = 这是在类和事件之间同步的好方法吗?

让我们看一下这个简单的代码示例(为简单起见,它是用angularjs编写的,但这种情况在JavaScript中经常发生):angular.module('app',[]).directive('myDir',function(){this.state={a:1,b:2};return{link:function(scope,elem,attrs){elem.on('click',function(){//"this"isnottheclassbuttheelementthis.state.a++;this.state.b++;console.log(this.state);});}}}

javascript - _.extend/_.assign 的目的?

我看过很多教程或代码示例,其中开发人员使用Underscore的_.extend方法或Lodash的_.assign当简单地添加属性就足够的方法时,它总是让我感到困惑,使用扩展/分配而不是简单地添加属性有什么好处?有很多次我可以看到使用这些方法的好处,例如,当从另一个对象添加多个属性时,但大多数时候我看到它在下面的示例中使用,但我没有看到任何好处。对于以下代码而不是分配属性,是否有我不知道的好处?http://tech.pro/tutorial/1734/building-decoupled-javascript-applications-with-postaljsvarWeather

javascript - 为什么我可以在 JS 中设置样式而不违反内容安全策略 style-src 'self' ?

设置style-src至'self'通过style禁用内联样式标签或style属性。这按预期工作。添加style通过JS的元素也被阻止。但我真的很惊讶我仍然可以设置HTMLElement的属性的style目的。例如,这不会触发CSP违规:document.getElementById('test').style.backgroundImage='url("image.png")';这如何防止攻击,如描述的那些here或here? 最佳答案 大概是因为如果您已经允许脚本注入(inject),样式修改是您最不担心的事情。样式元素和属性被

javascript - Object.assign 保留对原始对象的引用

这个问题在这里已经有了答案:HowdoIcorrectlycloneaJavaScriptobject?(80个答案)关闭7年前。我有方法:exportconstgroupActivities=({activities,tags,images,tickets})=>{if(!activities||!tags){console.error('Musthaveactivitiesandtags');}constgroupActivities=Object.assign({},activities);constgroups=groupByTags({activities:groupActi

Javascript 内存泄漏 : why would assigning object to null work?

关于用于防止内存泄漏的空赋值修复的性质,有人可以为我挠痒痒吗?我们都熟悉以下技术来阻止DOM对象和JS对象之间的循环引用,以防止内存泄漏:functionfoo(){varele=document.getElementById("someParagraphId");ele.onclick=function(){//someactionhere};ele=null;}问题是为什么上面的方法会起作用?将“ele”设置为null肯定会停止循环引用,但它不会也阻止将来对“ele”的引用吗?functionfoo(){varele=document.getElementById("somePar

javascript - typescript 对象解构结果为 "Property assignment expected."

我正在将一个项目从Babel转换到Typescript并收到以下编译器错误:errorTS1136:Propertyassignmentexpected.来自如下代码:varauth={...this.props.auth};此代码以前在Babel下运行良好,但在尝试通过Typescript编译时导致上述错误。Typescript中的对象解构是否不同? 最佳答案 您要找的特征是Objectspread/restoperators(建议用于ES7)。看起来已经计划但尚未实现:Wewanttowaitfortheproposaltore

javascript - 如何在此 React 组件中修复“对象的 "Cannot assign to read only property ' 样式”?

我正在创建自己的自定义选项卡组件。它由一个选项卡标题组成,每个选项卡标题都有一个正文部分。单击选项卡标题时,应将相应主体的样式设置为display:block,将所有其他样式设置为display:none。由于某些原因,我收到此错误:Cannotassigntoreadonlyproperty'style'ofobject我知道我不能手动更改样式属性,因为它似乎是只读的,但我该如何解决/解决这个问题?这是我的代码:Tabs.jsimportReact,{Component}from'react';classTabsextendsComponent{constructor(){super