说我必须遵循以下代码:
var numb = $(selector).length;
Run Code Online (Sandbox Code Playgroud)
现在我想基于此动态地创建变量:
var temp+numb = ...
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做?
编辑:
我知道有些人会告诉我使用数组.通常我会同意,但在我的情况下,var已经是一个数组,除了创建动态名称,我没有看到其他解决方案.
我想动态地调用一个变量。
export class AppComponent {
my_a_variable = 'test a';
my_b_variable = 'test b';
type = 'a'; // this variable value will come from another place dynamically.
}
Run Code Online (Sandbox Code Playgroud)
在我的HTML中,我需要像
<div>{{my_{{type}}_variable}}</div>
Run Code Online (Sandbox Code Playgroud)
我知道可以用assoc数组解决,但是我不能在这里使用它。你能帮忙吗?
谢谢。
好的,你有一组变量:
var height1 = 10
var height2 = 20
...
var height7 = 70;
Run Code Online (Sandbox Code Playgroud)
用户已经给出了输入,您需要获取其中一个变量的值,这里的代码是:
if(window.location.hash) {
var hash = window.location.hash.substring(1);
var option_name = $('a[name=' + hash + ']').closest('[id^="option"]').attr("id");
var hash_div_height_id = "height" + option_name.substring(6);
$('a[name=' + hash + ']').closest('[id^="option"]').show();
$('a[name=' + hash + ']').closest('[id^="option"]').height(hash_div_height_id);
} else {
// No hash found
}
Run Code Online (Sandbox Code Playgroud)
我现在的问题是我无法将"hash_div_height_id"(当前表示字符串"height1"或"height2"或jQuery返回的任何数字追加到字符串末尾)传递给高度函数,因为它是一个字符串.
那我怎么能这样呢?我可以以某种方式转换字符串"height1"来表示之前建立的变量height1吗?
如何使后面的代码工作?
var x = 'name';
Run Code Online (Sandbox Code Playgroud)
然后,使用x中的值,因为它是一个变量,并设置它,所以如果我想让它成为NAME,我将得到结果:
var name = 'NAME';
Run Code Online (Sandbox Code Playgroud)
可能吗 ?
可能重复:
Javascript 动态变量名称
我正在尝试在 javascript 中创建一个函数,该函数的名称依赖于变量。
例如:
var myFuncName = 'somethingWicked';
function myFuncName(){console.log('wicked');};
somethingWicked(); // consoles 'wicked'
Run Code Online (Sandbox Code Playgroud)
我似乎无法找到一种方法来做到这一点......我试图评估它,但是当我稍后尝试使用该函数时它“不存在”......或者更确切地说我得到了一个 ReferenceError该函数未定义...
任何帮助,将不胜感激。
var a = [10,20,30,40];
var b = [11,22,33,44];
var c = [40,30,20,10];
var d = ["a","b","c"];
var e = d[2];
console.log(e[0]);Run Code Online (Sandbox Code Playgroud)
如何将javascript视为变量e的字符串值(即字符串'c')作为数组名称,因此e [0]将返回40而不是位置[0]处的字符.感谢您的支持,对不起,如果这是一个愚蠢的问题.
有没有办法在不使用的情况下执行以下操作eval()?
以下函数接受字符串数组,其中字符串是对象名称.我迭代它们以确保它们都不是未定义的.我希望能够在不使用的情况下做到这一点eval()
function hasMissingDependencies(dependencies) {
var missingDependencies = [];
for (var i = 0; i < dependencies.length; i++) {
if (eval('typeof ' + dependencies[i]) === 'undefined') {
missingDependencies.push(dependencies[i]);
}
}
if (missingDependencies.length > 0) {
return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
有了这个,我就可以传递类似下面的内容并得到我想要的东西:
alert(hasMissingDependencies(['App.FooObject', 'App.BarObject']));
Run Code Online (Sandbox Code Playgroud)
我宁愿不使用eval()但是没有找到另一种方法来检查对象名称作为字符串传递时是否未定义对象.
我在这里读到窗口对象可以用来动态地在对象中创建属性名称.这是怎么做的
我有一个像这样的功能
function storeValues(){
var info = {};
$('.class1').each(function(index1, value1){
$('.class2', $(this)).each(function(index2, value2){
//so here I'd like to add a string to the property name
//like 'param-' and 'detail-' so I could end up with a
//structure like
//info.param_0.detail_0
//then
//info.param_0.detail_1
//info.param_1.detail_0
//info.param_1.detail_1
//info.param_1.detail_2
info.'param_'index1.'detail_'index2 = $(this).find('.desired_input').val();
});
}
Run Code Online (Sandbox Code Playgroud)
这可能吗.或者有更聪明的方法吗?
我有两个动态命名的JavaScript函数..
function a1(){
//some codes
}
function a2(){
//some codes
}
function a3(){
//some codes
}
Run Code Online (Sandbox Code Playgroud)
这些函数上面由PHP生成肯定..
<?php
for($i = 1; $i <= $load_period->count; $i++){
?>
<script type="text/javascript">
function a<?php echo $i;?>(){
//javascript functions
}
</script>
<?php
}
?>
Run Code Online (Sandbox Code Playgroud)
现在我必须调用这两个函数..
for(var i= 1; i <= 3; i++){
// here the solution code ..
// doesn't work >> a+i+();
}
Run Code Online (Sandbox Code Playgroud)
谢谢你的解决方案..
就像,我有这样的条件:
var a="avar", b=3;
var a+b="some value";
// expecting to make, avar3="some value";
Run Code Online (Sandbox Code Playgroud)
有可能吗?或者任何替代方式?
在我的控制器中,我动态创建滑块html以传递给我的视图 - 所以我最终得到了多个滑块(可以是1个滑块,可以是20个,或者介于两者之间的任何数字 - 取决于来自数据库的查询).
我需要将每个滑块与数据库中的ID和价格相关联.
ExtraPrices数组保存与每个滑块关联的价格.ExtraIDs数组包含数据库中每个额外项的ID.
我想创建一个JSON字符串,它保存每个滑块的设置,并采用ExtraPrice和ExtraID,以便我有一个JSON字符串,我可以发送回我的代码.
HTML输出是:
<script>
var ExtraPrices = [20.00,30.00,50.00];
var ExtraIDs = [13,19,25];
</script>
<label for="slider1">item 1</label>
<input type="range" name="slider1" id="slider1" min="0" max="10" value="0">
<label for="slider2">item 2</label>
<input type="range" name="slider2" id="slider2" min="0" max="10" value="0">
<label for="slider3">item 3</label>
<input type="range" name="slider3" id="slider3" min="0" max="10" value="0">
Run Code Online (Sandbox Code Playgroud)
我需要能够遍历两个数组,并将它们与相对滑块值绑定.Psuedo代码:
var count = 0;
var strJSon = "["
"RoomName": null,";
$.each('#slider').function(){
strJSon+= "{"
strJSon+= "\"ID\": " + ExtraIDs[count] + ",";
strJSon+= "\"Price\": " + ExtraPrices[count] + ",";
strJSon+= "\"Number\": " …Run Code Online (Sandbox Code Playgroud) 要为变量赋值是非常简单的,只需这样做即可
var foo = "bar";
Run Code Online (Sandbox Code Playgroud)
但是要为变量指定一个名称(动态),你必须这样做?
var variableName = "newName";
var variableName = "bar"; // in this case assign new value of variableName
Run Code Online (Sandbox Code Playgroud)
我必须这样做吗?
var foo + "_" + variableName = "foo" // foo_newName = "bar"
Run Code Online (Sandbox Code Playgroud) 我有一个变量varName,其内容为"myvar".我想创建一个名称variable和内容的变量varName,因此名称将是variablemyVar.
我该怎么做呢?