草庐IT

es6-features

全部标签

javascript - 使用 ES5 的 Angular2 网络 worker

我已经走上了使用Angular2但编写ES5代码的道路,这意味着我找到的示例和指南通常必须从与TypeScript相关的答案翻译而来。谁能帮我制作一个ES5版本的:引导应用程序。在TypeScript中,我看到它是这样完成的:import{WORKER_APP_PLATFORM,WORKER_APP_APPLICATION}from"angular2/platform/worker_app";import{platform}from"angular2/core";platform([WORKER_APP_PLATFORM]).application([WORKER_APP_APPLIC

javascript - 未调用 ES6 angular-meteor ng-table getData 函数

我正在尝试将我的代码重构为ES6。我正在使用angular-meteor和ng-table。重构前,数据显示在表格中。但是,重构为ES6语法后,数据不再显示。这是重构代码的片段:classMyController{constructor($scope,$reactive,NgTableParams,MyService){'ngInject';$reactive(this).attach($scope);this.subscribe('myCollection');this.myService=MyService;this.helpers({items(){returnthis.mySe

javascript - typescript 2.1 with async/await 为 angularjs 生成 ES5/ES3 目标

我正在尝试在一个Angular1.5.5项目中使用async/await。鉴于此服务方式getDocumentTypes():angular.IPromise{varurl="api/document/types";this.$log.log(url);returnthis.$http.get(url).then(_=>_.data);}我正在尝试创建该方法的async/await版本。asyncgetDocTypes():angular.IPromise{~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}}Intellisenseshowsanerror:TS1055

javascript - 我在哪里可以为 jshint 设置 ES6 选项?

我试过:/*jshintesversion:6*/但是在运行grunt时出现错误:这应该是首选方法,因为esnext已被弃用。看这里-http://jshint.com/docs/options/#esnext 最佳答案 您可以在gruntfile.js中设置“esversion”选项,如下所示:jshint:{files:['dist/*.js'],options:{'esversion':6,}}, 关于javascript-我在哪里可以为jshint设置ES6选项?,我们在Stac

javascript - 当在带有表情符号的字符串上使用 es6 扩展运算符时,数组中的 "Holes"

为什么当我尝试使用spread(...)运算符拆分带有表情符号的字符串时,我在结果数组中得到了“漏洞”?例子:[...'?']//->["?",hole]此外,更多的表情符号会产生更多的“漏洞”:[...'??']//->["?","?",hole,hole]来自Chromev71.0.3578.98的屏幕截图: 最佳答案 当然这是一个错误。作为解决方法,Array.from()的工作方式相同,只是它没有错误。>s="\uD83C\uDF1F\u5FCD\u8005\u306E\u653B\u6483\uD83C\uDF1F">[.

javascript - ES6 使用 for..of 反向迭代数组,我是否遗漏了规范中的内容?

在ES6中我们现在有iterators和for..of迭代它们。我们有一些内置的arrays;特别是keys,values和entries.这些方法允许人们执行通常会执行的大部分迭代。但是,反向迭代呢?这也是一项非常常见的任务,我在spec中没有看到任何内容。专门为它?还是我错过了?好的,我们有Array.prototype.reverse但我不一定想就地反转一个大数组,然后在完成后再次反转它。我也不想使用Array.prototype.slice制作一个临时的浅拷贝并反转它只是为了迭代。所以我看了一下generators并提出了这些可行的解决方案。(function(){'usest

javascript - 如何在 chrome 控制台中使用 let 等 ES6 语法?

这个问题在这里已经有了答案:UsingECMAScript6(5个答案)关闭7年前。我正在尝试在chrome控制台中编写一些ES6代码,但我运行时出现了一些错误。我如何在控制台中运行ES6脚本?例如,给定输入lettype='grizzle';控制台在消息中记录了一个SyntaxErrorBlock-scopeddeclarations(let,const,function,class)notyetsupportedoutsidestrictmode如下截图所示

javascript - 巴别塔 : Function parameter types in ES6

如果我编写以下代码并通过Babel(6.5.0)转译它,它会正常工作。functionfoo(first:string,second:number){//codehere}:string和:number只是从转译的ES5代码中删除。如果我使用错误的参数类型调用该函数,它不会导致任何错误/警告。即使没有任何功能,它们也能提供信息。我无法在互联网上找到有关ES6参数类型的正确信息。参数类型甚至是ES6的一部分吗?编辑:这个问题在下面的评论中得到了回答,我根据他们总结了官方答案。 最佳答案 感谢JoeClay,Bergi和FelixKli

javascript - ES6 类构造函数参数

我正在查看ES6类定义,但不理解构造函数的参数。这是类(class):exportclassModal{constructor($modal,{size=null,}={}){//stuff}}我对这个{size=null,}={}感到困惑。那是一个论点吗?什么意思? 最佳答案 这是一个objectdestructuring具有给定的默认值。如果你传递一个像这样的obj{size:true}您可以像普通变量一样访问构造函数中的“大小”exportclassModal{constructor($modal,{size=null}={}

javascript - 可以合并或嵌套 ES6 导入吗?

许多现代JavaScript库正在从单体更新为模块化的npm包;几个例子是lodash和d3.这在保持构建大小方面非常好,但在导入时会造成一些尴尬。加载整个库时,我写:importd3from'd3';letcsv=d3.csv()...letxScale=d3.scale()...当加载单个模块而不是整个包时,我写:importd3_scalefrom'd3-scale';importd3_requestfrom'd3-request';letcsv=d3_request.csv()...letxScale=d3.scale.scaleLinear()...是否有一种语法允许我合并我