Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ES6中String.prototype.includes/contains之间的差异?那你呢,有吗?_Javascript_Node.js_String_Ecmascript 6 - Fatal编程技术网

Javascript ES6中String.prototype.includes/contains之间的差异?那你呢,有吗?

Javascript ES6中String.prototype.includes/contains之间的差异?那你呢,有吗?,javascript,node.js,string,ecmascript-6,Javascript,Node.js,String,Ecmascript 6,我想知道这些方法中的哪一种会成为标准。从我所看到的情况来看,这两种方法都会产生类似的结果,但我不确定为什么会有两个版本/别名。他们之间有区别吗?另外,为什么ES6使用了.has,而它本可以使用.contains或.includes在一个名称下实现多个目的 我知道.has不用于字符串 我的测试支持: | Contains Includes Chrome | No Yes Firefox | Yes Yes NodeJS | Y

我想知道这些方法中的哪一种会成为标准。从我所看到的情况来看,这两种方法都会产生类似的结果,但我不确定为什么会有两个版本/别名。他们之间有区别吗?另外,为什么ES6使用了
.has
,而它本可以使用
.contains
.includes
在一个名称下实现多个目的

我知道
.has
不用于字符串

我的测试支持:

        | Contains      Includes
Chrome  | No            Yes
Firefox | Yes           Yes
NodeJS  | Yes           No

Array.prototype.includes返回一个布尔值

Array.prototype.indexOf返回一个数字


Array.prototype.contains不是本机JS。

请检查MDN中的部分。另外,您正在使用哪个版本的Node.js?
Node v0.12.0
,带有
--harmony
标志和
使用严格“
。通过阅读本页,firefox似乎将删除
包含的内容,而NodeJS将成为一个喜欢与众不同的笨蛋。然而。。。如果
.has
属于不同的名称,那就太好了。Node.js与此无关。它只是使用v8来支持JavaScript语言。由于节点v0.12.0使用了非常旧的v8版本(3.28.73),我建议您进行更新。