Javascript ES6中String.prototype.includes/contains之间的差异?那你呢,有吗?
我想知道这些方法中的哪一种会成为标准。从我所看到的情况来看,这两种方法都会产生类似的结果,但我不确定为什么会有两个版本/别名。他们之间有区别吗?另外,为什么ES6使用了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
.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),我建议您进行更新。