草庐IT

explicit关键字

全部标签

Javascript 模块模式和 new 关键字

我了解了模块模式的基础知识以及它使用闭包来允许私有(private)成员,但我无法完全理解为什么下面的代码会执行它的操作:varCalculator=function(){varpriv=0;return{changePriv:function(){priv++;},printPriv:function(){console.log(priv);}}}varmyCalc=Calculator();myCalc.printPriv();myCalc.changePriv();myCalc.printPriv();varmyOtherCalc=Calculator();myCalc.prin

javascript - 为什么在 Vue.js 中使用 `var` 关键字?

我在学习框架时看到的每个教程和代码片段都使用var作为它们的声明,包括theofficialdocs.前言,本人刚开始学习Vue,对它了解甚少,还没有找到答案。与其他假设属性名称相同:newVue({data:data})对比newVue({data})我假设ES6的const和let应该是标准的,我错了吗?有理由为Vue.js使用var吗?ES6有问题吗? 最佳答案 为什么文档使用var并避免ES6特性?我会说支持最小公分母,即最差的浏览器。因为Vue可以作为普通的旧包含在内标签(UMD/全局,无构建系统)并支持所有ES5-com

javascript - JS Promises/A+ 的 'catch' 方法名称是否无效,因为它是 JS 关键字?

最近开始在一个项目中使用JSPromises。我注意到每次我使用.catch我的JSlinter提示。它确实运行并做了它应该做的事情,但我查找了ECMAScriptspec它看起来真的是对的:因为catchisakeyword它不能用作标识符。据我了解,方法名称是标识符,因此这是无效的:Promise.reject("Duh").catch(alert);应该是这样的:Promise.reject("Duh")['catch'](alert);我错过了什么? 最佳答案 WhatamImissing?属性名称不是标识符,它可以使用任何

javascript - 在 Javascript 中从 Google 搜索中提取关键字

我想从Google搜索的网址中提取搜索关键字(例如,对于关键字“car”:http://www.google.com/webhp?hl=en#sclient=psy&hl=en&site=webhp&source=hp&q=car&aq...(这里的car在“q=”和“&aq”之间但我注意到标记可能会改变["&ie"而不是"&aq"])。我是正则表达式和谷歌搜索的新手,到目前为止我还没有找到解决方案,请问有人知道怎么做吗?布鲁诺 最佳答案 为此您不需要正则表达式。修改自http://jquery-howto.blogspot.com

javascript - CSS 关键帧动画的随机 "start point"

我有一个带有垂直滚动背景图像的框列表:@keyframesmovie{0%{background-position:50%5%;}50%{background-position:50%95%;}0%{background-position:50%5%;}}.movie{animation:movie50slinearinfinite;}“问题”在于,以这种方式,所有框的背景都同时移动。我想要一个“随机起点”,以便每个框都有不同的动画。例如,一个背景向下移动而另一个背景向上移动。纯CSS有可能吗?我找不到使用Javascript的简单方法.. 最佳答案

javascript - jQuery : How to check if NO option was explicitly selected in a select box

是否可以检测是否没有在选择框中明确选择选项?我已经尝试过这些方法,但都不起作用:FirstSecondThirdFourth试验1:alert($('#selectoption:selected').length);//returns1试验2:alert($('#selectoption[selected=selected]').length);//returns1试验3:alert($('#selectoption:selected').attr('selected'));//returns'selected'有什么想法吗? 最佳答案

javascript - javascript中NaN的保留关键字是什么?

如果我想测试一个表达式的结果,函数将返回NaN我该如何检查?示例:$('amount').value.toInt()!='NaN'^不起作用,我假设返回的值不是字符串,$('amount').value.toInt()!=NaN^似乎也不起作用,这个似乎很明显那么如何检查返回值是否不是数字呢? 最佳答案 NaN值被定义为不等于任何事物,包括它自己。使用isNaN()测试值是否为NaN功能,足够适当。(ECMAScript6为非数字参数添加了一个具有不同语义的Number.isNan()函数,但截至2015年,它还未在所有浏览器中得到

javascript - try/catch 表达式中的 var 关键字 : JSLint bug or global assignment?

我注意到JSLint的一个有趣结果在研究codereview题。JSLint提示变量在定义之前被使用。这是生成相同结果的代码的缩短版本:(function(){try{vara=0;throw{name:"fakeError"};}catch(e){a=1;}}());我对JavaScript的理解是上面的代码应该等同于:(function(){vara;try{a=0;throw{name:"fakeError"};}catch(e){a=1;}}());事实上,当通过Firebug运行时,这两个示例都不会导致a存在于全局范围内。我看了一下ECMA-262spec的第12.14节,但

javascript - 在 JavaScript 对象中使用 'this' 关键字

我想认为我了解JavaScript,但我今天发现了一些意想不到的事情,我希望有人能向我解释为什么会这样。拿这个代码varanimalData={cow:"cow",sheep:"sheep",getCow:function(){returnthis.cow;},animalList:[{animalId:this.cow,label:"Thisisacow"},{animalId:this.sheep,label:"Thisisasheep"}]};console.log(animalData.getCow());console.log(JSON.stringify(animalDat

javascript - 无法在 Safari Javascript 中使用 "let"关键字?

我不明白使用“let”关键字的最佳方式...在IE11和Chrome45中我可以很好地使用它在Safari8.0.4中,与在旧版本的Chrome中一样,它给出错误“意外使用保留字‘let’”在Firefox中,let关键字仅在中有效,但这种脚本类型在IE11、Chrome45、Safari8中甚至不能被识别为Javascript。这里有一个JSFiddle展示了它的实际效果:https://jsfiddle.net/p6cgtyg6/1/所以--我不介意要求用户使用现代版本的浏览器。如果老实说没有支持此关键字的Safari版本,我不介意排除Safari。(这是真的吗?为什么每个人都把所