我的代码如下
<script>
ball1 = "this is ball1";
ball2 = "this is ball2";
ball3 = "this is ball3";
bat = "this is not a ball";
var arr = $("[name^='ball']");
alert(arr.length);
</script>
我想获取以字符串“ball”开头的所有变量。我该怎么做?上面的代码给出的arr.length为0。我的代码正确吗?
最佳答案
jQuery 的目的是查询 DOM 树。不管怎样,试试这个:
var r = /^ball/,
balls = [];
for (var k in window) {
r.test(k) && balls.push(window[k]);
}
请注意,window
(最上面的范围)是隐式填充的:
<script>
var ball1 = '1'; // global variable
window.ball1; // '1'
</script>
但是,如果您在函数内部工作,则情况并非如此:
function f() {
var ball1 = '1'; // local variable
window.ball1; // undefined
}
f();
window.ball1; // undefined;
在这种情况下,无法从外部访问 ball1
。
关于javascript - 使用 jquery 查找类似名称的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22209059/