javascript引用动态变量名的变量值

今天在开发中遇到这样的需求:

有三个数组,分别是:

var a_Array = new Array("baise");
var b_Array = new Array("heise");
var c_Array = new Array("baise","huise");

 

现在我们的html页面中有三个按钮,分别是buttonA,buttonB,buttonC,当用户点击了A按钮,就获取对应A数组的值,点击B按钮就获取对应B按钮的值,点击C按钮就获取C按钮的值。

当然笨的办法就是通过if判断写死,但是如果我们的每一个页面的按钮不一样,比如可能是c,d,e按钮,那判断就失效了。所以我们就想到,使用动态的变量名。什么意思呢?

当用户点击了A按钮,那我们就能获取到A按钮传递的值,比如值是a,那我们就可以根据a的值去拼接一个数组,例如:

var a_Array = new Array("baise");
var b_Array = new Array("heise");
var c_Array = new Array("baise","huise");

function selectBtn(btnId){

    var btnVal = document.getElementById("btnId").value;

    //我们模拟当用户点击A按钮就循环A数组,点击B按钮就循环B数组,点击C按钮就循序C数组

    //我们首先可能会想到如下写法:

   // var selectArray = btnVal+"_Array";

   // 那么我们打印selectArray其实并不是我们想要的数组,而是一个内容为"btnVal_Array"的字符串而已

   //那么我们如何通过动态拼接的方式来完成我们想要的功能呢,可以通过this关键字

   //this[] 引用类型,引用原属性的值

   for(var i=0;iselectArray].length;i++){
       var selectId = this[selectArray][i];

   }

}

 

 

本文首发于度外网络官方博客,转载请注明出处:http://www.duwaiweb.com/blog/20120905_642d8f55-6205-445b-9335-852b6bd1df5a.html

更多java毕业设计请访问:http://www.lunwenhui.com/java/page_7.html

posted @ 2012-09-26 23:58  小查查  阅读(1358)  评论(0编辑  收藏  举报