【问题标题】:Doesn't parse.com cloud code accepts string.includes()?parse.com 云代码不接受 string.includes() 吗?
【发布时间】:2016-11-24 03:33:50
【问题描述】:

我正在尝试在解析云代码中执行此操作:

var userMail = userModel.get('email');
console.log((typeof userMail));
console.log(userMail);
if (userMail.includes("mydomain.com")){
    // do something with this string
}

2 个控制台日志在 parse.com 云代码日志上显示正确的电子邮件地址和string

我正在尝试运行 Stringincludes 函数。上面的代码在node 上运行良好。但是,在 parse.com 上,我收到此错误:

Result: TypeError: Object myemail@mydomain.com has no method 'includes'
at e.<anonymous> (main.js:1418:22)
at e.i (Parse.js:14:27703)
at e.a.value (Parse.js:14:27063)
at e.<anonymous> (Parse.js:14:27774)
at e.i (Parse.js:14:27703)
at Parse.js:14:28316
at l (Parse.js:14:28120)
at e.a.value (Parse.js:14:28301)
at e.i (Parse.js:14:27748)
at e.a.value (Parse.js:14:27063)

为什么这个字符串没有includes 方法?

谢谢。

【问题讨论】:

    标签: javascript node.js string parse-platform


    【解决方案1】:

    includes 直到 ECMAScript 6 才引入

    使用的 javascript 引擎必须较旧

    但你总是可以使用indexOf

    if (userMail.indexOf("mydomain.com") > -1){
        // do something with this string
    }
    

    【讨论】:

    • 很想知道在我自己的解析服务器部署到 heroku 中是否会有所不同。
    【解决方案2】:

    这是因为 parse.com 不提供 ES6,或者如果您更喜欢 JS 1.8,实际上它使用的是 JS1.6.x 所以includes() 在这个执行平台上不存在。 但是您可以按照 MDN 上的建议使用 polyfill

    【讨论】:

      猜你喜欢
      • 2015-08-08
      • 2016-05-04
      • 1970-01-01
      • 2014-08-31
      • 2014-11-23
      • 2016-02-08
      • 2016-02-24
      • 2013-06-23
      • 2016-04-28
      相关资源
      最近更新 更多