繁体   English   中英

在javascript中创建对象时请参考键入值

[英]Refer to key in value when creating object in javascript

是否有任何语法可以执行以下操作

var obj = {a: this, b: this}

并得到

obj = {a: 'a', b: 'b'}

你可以这样做:

var obj = {a: "this is A", b: "this is B"}
obj.a equals to "this is A"
obj.b equals to "this is B"

使用此对象示例的快速片段添加了存储在对象中的指针位置:

 function getMousePosition(event){ var mouse = {x: 0, y: 0}; mouse.x = event.clientX; mouse.y = event.clientY; Elem = document.getElementById("Elem"); Elem.innerHTML = "Simple Mouse Position by Khriztian Azuaje.<br><br>" + "X pos: " + mouse.x + ", Y pos: " + mouse.y; } 
 #Elem { background:black; text-align: center; color:white; padding:2px; display: flex; align-items: center; justify-content: center; height:160px; } 
 <body onmousemove="getMousePosition(event)"> <div id="Elem"></div> </body> 

如果要创建一个包含一堆键和值等于相同字符串的对象,则很简单:

var obj = {};
['a','b'].forEach(function(item) {
    obj[item] = item;
});

是! 我不确定为什么要使用,但是这里是:

var obj = { a: 'you', b: 'they'};
var newObj = {};

for (var key in obj) { 
    newObj[key] = key
};

//newObj = {a: "a", b: "b"}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM