【问题标题】:How to pass variable inside js? [duplicate]如何在js中传递变量? [复制]
【发布时间】:2017-10-30 10:23:15
【问题描述】:

我正在尝试在 js 的方法中传递一个变量,以便我可以获得一些值作为返回,例如

  getId: function (pos) {
    var myVar = $('.myDiv li:nth-child(pos) .myInnerDiv .myInnerMostDiv').attr('id');
    return myVar;
  }

然后将其称为

this.getId(6); //where 6 is the pos

但这似乎不起作用。

我在这里做错了什么?

【问题讨论】:

  • $('.myDiv li:nth-child(' + pos +') .myInnerDiv .myInnerMostDiv').attr('id')

标签: javascript


【解决方案1】:

你在字符串中直接写pos,所以它被当作是......你想要的是连接它的值!

getId: function (pos) {
    var myVar = $('.myDiv li:nth-child('+pos+') .myInnerDiv .myInnerMostDiv').attr('id');
    return myVar;
  }

【讨论】:

    【解决方案2】:

    尝试改变这一点:

    var myVar = $('.myDiv li:nth-child(pos) .myInnerDiv .myInnerMostDiv').attr('id');
    

    收件人:

    var myVar = $(`.myDiv li:nth-child(${pos}) .myInnerDiv .myInnerMostDiv`).attr('id');
    

    它使用 ES6 的模板 litteral 将 pos 连接到字符串中

    【讨论】:

    • 您在此处使用的称为字符串插值,它是 ECMAscript6 的一部分,目前可能不适用于所有浏览器。当然,您可以使用 BABEL 将其转换为纯 js。您可以在caniuse.com/#search=literals 看到浏览器支持
    猜你喜欢
    • 2021-11-23
    • 2019-08-10
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    • 1970-01-01
    • 1970-01-01
    • 2017-06-18
    • 2012-04-01
    相关资源
    最近更新 更多