zoukankan      html  css  js  c++  java
  • 如何让JS变量和字符串拼接后,是变量而不是字符串?

    发现一个很有意思的问题,就是把变量与字符串或者数字拼接后类型变成了字符串,而并执行其中的的 JavaScript 代码。

    问题

    <ul class="testList">
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
    <script>
        var testList = $(".testList li")
        var test0 = "变量0";
        var test1 = "变量1";
        var test2 = "变量2";
        var test3 = "变量3";
        for(var i=0;i<testList.length;i++){
          testList.eq(i).html("test" + i)
        }
    </script>
    

    输出结果:

    显然这并不是想要的结果

    解决 eval()函数

    eval() [1] 函数可计算某个字符串,并执行其中的的 JavaScript 代码。

    <ul class="testList">
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
    <script>
        var testList = $(".testList li")
        var test0 = "变量0";
        var test1 = "变量1";
        var test2 = "变量2";
        var test3 = "变量3";
        for(var i=0;i<testList.length;i++){
          testList.eq(i).html(eval("test" + i))
        }
    </script>
    

    输出结果:

    参考

    [1]:JavaScript eval() 函数

  • 相关阅读:
    cmd登录系统用户
    Js操作Cookie
    Tomcat 调优方案
    Oracle 服务启动关闭
    Mysql服务启动与关闭
    JSP中的隐含对象
    JSP指令
    Js的String对象
    js排序
    MyBatis系列目录--5. MyBatis一级缓存和二级缓存(redis实现)
  • 原文地址:https://www.cnblogs.com/xiaodongxier/p/ru-he-rangjs-bian-liang-he-zi-fu-chuan-pin-jie-hou.html
Copyright © 2011-2022 走看看