草庐IT

javascript - 为什么我不能在 Node v0.11.11 中使用 Promise?

我只是在摆弄Node的v0.11分支,我想知道为什么我不能使用原生ES6Promise对象,即使打开--harmony。我常用的chrome浏览器:GoogleChrome32.0.1700.77(OfficialBuild244503)JavaScriptV83.22.24.10支持它们,node.jsv0.11.11告诉我:>process.versions.v8'3.22.24.19'那么是什么给了? 最佳答案 NativePromises已加入,您现在可以使用它们。它们仍然比像Bluebird这样的库更慢且更难调试,但它们就

javascript - 使用 mocha,我如何运行名​​称中*没有* (slow) 的所有测试?

我有很多测试,其中一些名称中有“(慢)”:其中一些比标记为(慢)的测试慢,但其他测试依赖于它们,因此不能跳过。我只想跳过名称中带有(慢)的那些——这可能吗?我正在使用Mocha。 最佳答案 在我看来,您正在为要在浏览器中加载以运行Mocha的页面执行此操作。要在浏览器中执行此操作,您可以在页面的URL中传递这些参数:grep大致对应于命令行上的--grep选项。这将运行的测试范围缩小到与传递给grep的表达式相匹配的测试。但是,目前(甚至从2.0.1开始)没有办法让Mocha将此参数解释为正则表达式。它总是被解释为一个字符串。这就是

javascript - 如何在javascript中使用setter和getter,我遇到了一个错误

我的英语不好,但我会尽量简单地解释我的问题。说明:告警结果为1,不知道为什么,我觉得应该是2015年才告警。varbook={};Object.defineProperties(book,{_year:{value:1},edition:{value:23},year:{get:function(){returnthis._year;},set:function(newValue){if(newValue>2004)this._year=newValue;}}});book.year=2015;alert(book.year); 最佳答案

javascript - 如果我使用的是 ES6 模块,还需要模块加载器吗?

不幸的是,我对JavaScript模块加载器的了解仍在增长,我正试图了解它们与新的ES6模块的关系。据我所知,使用CommonJS或RequireJS等模块加载器使用ES5兼容JavaScript确实需要使用异步模块加载器的使用,以提高性能并仅在需要时使用相应模块加载器的语法进行加载。然而看着ES6moduledocumentation阅读其他信息,在我看来,模块加载是通过import和export关键字原生支持的。如果是这种情况,我是否更正了ES6JS模块native支持异步模块加载,因此我不需要使用像CommonJS或RequireJS? 最佳答案

javascript - 为什么我无法读取未定义的属性 'toString'

我使用this包裹。我在slug函数的开头添加了这些console.log。functionslug(string,opts){console.log('log1:-------');console.log('log2:'+string);console.log('log3:'+typeofstring);string=string.toString();....}这是输出:log1:-------log2:YüzeyAktifMaddelerlog3:string/Users/------/seeder/node_modules/mongodb/lib/utils.js:99proc

javascript - 我应该使用什么 JavaScript 库来解析 URL 参数?

如何在JavaScript中解析URL参数?(这些参数我通常会称为GET参数或CGI参数,但在这种情况下页面基本上是提交给自己,而不是服务器,所以没有GET请求,也肯定没有CGI程序。)我在网上看到了很多可以复制的例程,但我不知道其中的任何一个有多健壮。我已经习惯了其他语言,例如Perl和Java,在这些语言中,我可以依赖一个经过充分测试且功能强大的库,我知道它可以处理标准中的数百万个小边缘情况。我想在这里做同样的事情,而不仅仅是剪切和粘贴示例。 最佳答案 jQueryURLUtils或jQueryURLParser.

javascript - 我如何从 JavaScript 判断 ReactJS 是否处于开发模式?

我正在写一个Mixin对于ReactJS。我希望它做一些验证,但只有在developmentmode中使用ReactJS时.我如何从JavaScript判断ReactJS是处于开发模式还是生产模式? 最佳答案 ReactJS源代码使用一个名为__DEV__的变量跟踪它,但它没有被导出,所以它对你的Mixin不可用。然而,它的后果是。例如,当你打破一个不变量时,开发模式ReactJS会给你一个很好的错误描述。在生产模式下,它会给出一个一般错误,告诉您使用开发版本。我们可以使用它来构建一个函数来确定React是否处于开发模式:funct

javascript - 我如何使用 javascript/jquery 知道给定的字符串是十六进制、rgb、rgba 还是 hsl 颜色?

我使用正则表达式表示十六进制。/^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/但我不知道我应该做什么寻找rgb、rgba和hsl。我正在获取字符串中的输入。例如,输入将包含“rgb(0,0,0)”或“rgb(0,0,0,0.2)”。 最佳答案 这里有不同的选项:1。使用虚拟元素使用浏览器的验证。创建一个dummyHTML元素,分配颜色并检查它是否已设置。这是迄今为止最好的选择。它不仅更容易,而且还允许向前兼容。functionCheckValidColor(color){vare=document.getE

javascript - 我应该在哪里放置与 redux 中的 Action 相关的同步副作用?

(注意:我的问题没有写清楚,我在想一些错误的地方。问题的当前版本只是尝试写一些可以使接受的答案对尽可能多的人有用的东西。)我想要一个将项目添加到商店并将其注册到外部依赖项的操作。我可以使用thunk中间件并编写exportfunctionaddItem(item){returndispatch=>{dispatch(_addItemWithoutRegisteringIt(item));externalDependency.register(item);};}但订阅者会在项目注册之前收到通知,他们可能依赖于它是否已注册。我可以颠倒顺序写exportfunctionaddItem(ite

javascript - 我以为我了解范围

有人能告诉我为什么最后一次记录“x”等于0而不是1吗?我想因为它是在函数外部声明的所以它具有全局范围然后在函数中它的值设置为1并且该值将仍然是全局性的?我知道函数中的第一个'x'值是一个全局值,因为任何没有使用var关键字声明的变量都会成为窗口对象的属性。非常感谢varx=0;//globalvariablefunctiony(){x=1;log("1.%n",x);//1.1varx=2;log("2.%n",x);//2.2}y();log("3.%n",x);//3.0 最佳答案 var语句是提升的主题,当您的代码被评估时,它