javascript中将字符串当变量如何使用的方法

平缓的、山坡上镶嵌着一块块粉红色的荞麦田,路边铺着碧绿的青稞地,圆木建成的围栏顺着弯弯曲曲的土路,一直通向远方的原始森林,藏式吊脚楼错落有致地分布在路旁,煮奶茶的淡蓝色烟雾中,牛群、羊群时隐时现,整个氛围呈现着一种中世纪乡土意味。

写了一个集成度很高的JS脚本,但遇到了一个问题。需要将变量名以字符串的形式传递给指定的逻辑处理。但是在字符串转换成变量名时遇到点问题,请教了一下搜索引擎得到了两种解决方案,下面就由来详细的说说。

js字符串转为变量使用的方法

方法1、使用 eval 函数将字符串转换变量名

PS:不推荐此方法,网上说此方法有一定的危险性,个人没测试过,有兴趣的可以自行研究。

例:

//全局变量
host = 'feiniaomy.com';
str = 'host';
console.log(eval(str)); // feiniaomy.com
//局部变量
var name = 'mochu';
str2 = 'name';
console.log(eval(str2)); // mcohu

方法2、使用 window 对象将字符串转成变量

所有js中的全局对象,变量以及函数都会自动成国 window 对象的成员,所以我们可以利用 window 对象来实现js字符串转变量的方法。

例:

//全局变量
host = 'feiniaomy.com';
str = 'host';
console.log(window[str]); // feiniaomy.com
//局部变量
function a()
{
    var name = 'mochu';
    var str = 'name';
    return window[str];
}
console.log(a()); //mochu

到此这篇关于javascript中将字符串当变量如何使用的方法就介绍到这了。没有不老的誓言,没有不变的承诺,踏上旅途,义无反顾!更多相关javascript中将字符串当变量如何使用的方法内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
JS获取鼠标点击时的位置

JS获取URL参数

Ajax跨域问题及解决方案(jsonp,cors)

ajax动态加载json数据并详细解析

ajax从JSP传递对象数组到后台的方法