javascript - 通过组合字符串和变量来创建新的 JavaScript 变量

标签 javascript string variables var

所以这是我的问题。

pageTitle1 = ('This is page one');
pageTitle2 = ('This is page two');
pageTitle3 = ('This is page three');

currentPageTitle = ('pageTitle'+currentPosition);

$("#pageNumber").html(currentPageTitle);

我正在尝试根据我所在幻灯片的 currentPosition 在屏幕上显示当前页面标题。我遇到的问题是,当我需要显示“这是第一页”时,上面的代码在屏幕上显示“pageTitle1”。我对 javascript 很陌生,所以我感觉这是一个简单的解决方案,但几天的谷歌搜索却没有给我带来任何结果。

最佳答案

使用数组而不是单独命名每个变量。

var pageTitles = [
 'This is page one',
 'This is page two',
 'This is page three'
];

var currentPageTitle = pageTitles[currentPosition];

您的代码不起作用的原因是它只是添加两个字符串 "pageTitle"currentPosition并将连接的字符串分配给 currentPageTitle 。相反,您想要的是获取存储在具有该名称的变量中的值。假设您在全局范围内创建这些(顺便说一句,这不是一件好事),您可以这样做:

var currentPageTitle = window['pageTitle'+currentPosition];

但是,使用数组是更好的方法。

关于javascript - 通过组合字符串和变量来创建新的 JavaScript 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4976090/

相关文章:

javascript - 使用 Javascript 添加文本的不同方法

perl - 为什么这个 Perl 变量保持它的值

java - Activity 之外的类中的变量

javascript - 当firebase函数从webapp代理时,如何验证当前用户?

javascript - 由于 socket.io 无法构建 JMVC 应用程序

php - 字符串替换和数组的替代方法

c - 使用 sscanf 多次读取字符串

python - 更改列表的元素与更改列表本身

javascript - 如何动画显示/隐藏div?

c# - 字符串转十进制之谜