jjzjj

ecmascript-2018

全部标签

javascript - 如何使用纯 ecmascript 且浏览器不支持 h.264 从 MP4 URL 获取视频高度和宽度?

我正在编写用于下载视频的用户脚本。网站的flash播放器使用JSON文件。我这个脚本的目的是根据网页下载并解析视频,得到视频的url。目前可以成功下载提取视频的URL。JSON文件的重要部分如下所示:{"ammProfile":"AMM-HBBTV","version":"VF","versionProg":"1","VFO":"HBBTV","VMT":"mp4","VUR":"http://vo.llnwd.net/v2/am/HBBTV/051332-074-A_SQ_2_VF_01464306_MP4-2200_AMM-HBBTV.mp4"},{"ammProfile":"AM

javascript - 它是 Ecmascript 中的错误 -/\S/.test(null) 返回 true 吗?

在Actionscript3和Javascript中,这些语句给出相同的结果:/\S/.test(null)=>true/null/.test(null)=>true/m/.test(null)=>false/n/.test(null)=>true在这种情况下,null值似乎被转换为字符串“null”。这是Ecmascript中的已知错误还是我遗漏了什么? 最佳答案 这不是错误,但你是对的,null强制到'null'并且该行为在规范中定义:RegExp.prototype.test(string),在内部等效于表达式:RegExp.

JavaScript - 传播和休息语法以从对象中删除特定属性

我有一个对象如下:letobj={foo:1,bar:2,baz:3}我想通过调用一个将要删除的属性名称作为参数的方法来删除特定属性removeProperty(obj,propertyName){let{propertyName,_,...result}=objreturnresult}问题是这个方法只有当我们直接在语法中写属性名称时才有效,比如:let{bar,_,...result}=obj。但是它将其作为参数传递不起作用,因为语法spead将其创建为新变量我们如何做到这一点,如果可能的话,除了lodash的omit之外,还有其他解决方案 最佳答案

javascript - 在 javascript Harmony/ECMAScript 6 中删除或覆盖 const 变量

阅读和修改ECMAScript6提供的新功能。用于编写常量变量的新“const”语句是一个很棒的功能,它为已经很有趣的更新添加了功能。变量创建为只读,一旦声明就不能被覆盖。编辑:随之而来的问题出现了,例如,在控制台上测试代码时。两次运行包含const定义的脚本会导致错误,中断执行。如果我想释放那个关键字怎么办?有什么方法可以取消设置或删除变量吗?我读过thispost这实际上也是一个影响var语句的问题,因为创建变量的环境在许多抽象级别上是不同的。ECMAScript6打算如何解决这个问题? 最佳答案 无法重新定义使用const声明

javascript - ECMAScript/Javascript 6 中的类是否需要 IIFE?

如果我有ClassCar{}我需要用我们的函数闭包来包装它吗?var会被提升到窗口吗?还是只是去上课?转译时呢?Traceur/babel会把它变成IIFE并让我们变成var吗?我需要:(function(){ClassCar(){}}());为了安全? 最佳答案 不需要像此处所示的类car的IIFE包装器,事实上,这将创建一个执行上下文并从页面的其余部分隐藏该类。所以你只需将其保留为(不是小写)classCar(){}Var仍然以与之前相同的方式被提升。它将被提升到执行上下文的顶部。如果代码当前位于窗口的上下文中,那么var将在此

javascript - 有没有 ECMAScript Validator

是否有像HTML和CSS那样的ECMAScript验证器?理想情况下,我需要一些自动化的方法来检查此标准的3.0版。 最佳答案 尝试JSLint.默认情况下,它实际上针对ECMAScript3的更严格子集进行验证,但您可以切换一些选项以使其更宽容。如果需要,您还可以启用ECMAScript5构造。 关于javascript-有没有ECMAScriptValidator,我们在StackOverflow上找到一个类似的问题: https://stackoverf

javascript - ECMAScript 5 在任何浏览器中可用吗?

我想尝试一些新的ECMAScript5功能。我想做一些类似于谷歌搜索时发现的代码的事情:varobj={};Object.defineProperty(obj,"value",{value:true,writable:false,enumerable:true,configurable:true});(function(){varname="John";Object.defineProperty(obj,"name",{get:function(){returnname;},set:function(value){name=value;}});})();print(obj.value)

javascript - ECMAScript Promise.all 方法适用于 jQuery.Deferred。为什么?

我正在研究JavaScript中的Promises。我很感兴趣能否将ECMAScriptPromises与其他实现结合起来,例如jQuery$.Deferred。当Promises.all与jQuery$.Deferred一起正常工作时,我感到很惊讶。我试图在jQuery源代码和CommonJSPromises/A规范中找到答案,但我仍然误解了为什么这段代码按我预期的方式工作(在10秒后执行console.log,而不是5秒):varpromise=newPromise(function(resolve,reject){setTimeout(function(){resolve();/

javascript - Chrome 38 中的 ecmascript 6 特性

我们有一个数组,每个页面上都有许多属性。有时它有一个“值”属性。我们使用myArrayObject['values']检查它并期望是字符串或未定义。更新到Chrome38后myArrayObject['values']返回functionvalues(){[nativecode]}经过一番挖掘,这似乎与V8ticket有关实现@@unscopablesforthe6thEditionofecmascript.这些变化是committed两个月前。不久后,一名开发人员试图rollthembackwiththenotethattheywere"web-breaking".所以问题是,Arr

javascript - ECMAScript 6 类中静态方法的用途

ES6中的静态类方法应该处理ES5中的哪些问题?Babel文档在itssectionregardingES6classes中有以下示例,尽管它实际上并未说明此模式完成的任务。Classessupportprototype-basedinheritance,supercalls,instanceandstaticmethodsandconstructorsclassSkinnedMeshextendsTHREE.Mesh{constructor(geometry,materials){super(geometry,materials);this.idMatrix=SkinnedMesh.