Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 动态变量-如何获取名称和值?_Javascript_Jquery - Fatal编程技术网

Javascript 动态变量-如何获取名称和值?

Javascript 动态变量-如何获取名称和值?,javascript,jquery,Javascript,Jquery,我需要创建动态变量,我需要得到这个变量的名称和值 我的代码: console.log(listaY) $.each(listaY, function(key,val){ console.log(eval(val.nodeName + "Prop" + "= val.nodeValue")); console.log(eval(val.nodeName+"Prop").nodeName); console.log(key + ":" + val); }); 控制台:

我需要创建动态变量,我需要得到这个变量的名称和值

我的代码:

console.log(listaY)

$.each(listaY, function(key,val){
    console.log(eval(val.nodeName + "Prop" + "= val.nodeValue"));
    console.log(eval(val.nodeName+"Prop").nodeName);
    console.log(key + ":" + val);
});
控制台:

 Object {window: Object}
  window: Object
    childrens: Array[1]
      0: Object
        name: Object
        height: "height"
      __proto__: Object
    __proto__: Object
    length: 1
    __proto__: Array[0]
    height: "auto"
    nome: "Win2"
    width: "auto"
  __proto__: Object
__proto__: Object

view

undefined

0:[object Attr] 
listaY是DOM对象

我需要从名称中获取变量的名称及其值。 我怎么能得到这个

解决方案:

var obj = {}; 
$.each(listaY,function(key,val){ 
    obj[val.nodeName + "Prop"] =  val.nodeValue; 
});

通过:@Rocket Hazmat

尝试设置对象的值,而不是使用
eval

var obj = {};
$.each(listaY,function(key,val){
    obj[val.nodeName + "Prop"] = val.nodeValue;
});

我只是不明白你在找什么,console.log(key+“:”+val);或者什么?你是说你想结束这样的事情
listaY[“name”]=“view”
?不是语法错误,但它肯定不会产生OP所寻找的内容。它创建两个全局变量,并将它们的值放入数组。@user2403131,“…变量名称…”哪个变量的名称?@user2403131,很难理解您到底想要实现什么,但是如果您能够创建一个示例,这会容易得多;