如何通过 javascript 中的参数更改 属性 名称
how to change property name by argument in javascript
我有一些功能:
function funcName(first_data, SECOND_DATA) {
// ...some code here...
data: {dontMatterProp: dontMatterVal, SECOND_DATA: SECOND_DATA},
// ...some code.....
}
我的 属性 name 'SECOND_DATA' 也需要更改!
例如在 php 中 a 可以做类似 {SECOND_DATA}...
你的问题有点不清楚,但我想你要找的是这样的:
function funcName(first_data, SECOND_DATA_KEY, SECOND_DATA_VALUE) {
// ...some code here...
x = {}
x.data = {dontMatterProp: dontMatterVal}
x.data[SECOND_DATA_KEY] = SECOND_DATA_VALUE
// ...some code.....
}
如果你只想让键等于值,你可以这样做
x.data[SECOND_DATA] = SECOND_DATA
但这有点奇怪。为什么要将某些东西映射到自身?不需要任何值,如果是这种情况,您可以验证密钥是否存在...
您可以在 javascript 中为动态键使用方括号。所以,
var x = {}
x['something'] = 'test'
// x === { 'something': 'test' }
x[something] = 'test2'
// error: something is undefined
var something = 'hello'
x[something] = 'test3'
// x === { 'something': 'test', 'hello': 'test3' }
希望对您有所帮助?
我想你想要:
data[SECOND_DATA] = SECOND_DATA; // assign the value
如果你只是使用:
var data = { SECOND_DATA: SECOND_DATA };
使用对象表示法 - 属性 名称将始终为 SECOND_DATA
我有一些功能:
function funcName(first_data, SECOND_DATA) {
// ...some code here...
data: {dontMatterProp: dontMatterVal, SECOND_DATA: SECOND_DATA},
// ...some code.....
}
我的 属性 name 'SECOND_DATA' 也需要更改! 例如在 php 中 a 可以做类似 {SECOND_DATA}...
你的问题有点不清楚,但我想你要找的是这样的:
function funcName(first_data, SECOND_DATA_KEY, SECOND_DATA_VALUE) {
// ...some code here...
x = {}
x.data = {dontMatterProp: dontMatterVal}
x.data[SECOND_DATA_KEY] = SECOND_DATA_VALUE
// ...some code.....
}
如果你只想让键等于值,你可以这样做
x.data[SECOND_DATA] = SECOND_DATA
但这有点奇怪。为什么要将某些东西映射到自身?不需要任何值,如果是这种情况,您可以验证密钥是否存在...
您可以在 javascript 中为动态键使用方括号。所以,
var x = {}
x['something'] = 'test'
// x === { 'something': 'test' }
x[something] = 'test2'
// error: something is undefined
var something = 'hello'
x[something] = 'test3'
// x === { 'something': 'test', 'hello': 'test3' }
希望对您有所帮助?
我想你想要:
data[SECOND_DATA] = SECOND_DATA; // assign the value
如果你只是使用:
var data = { SECOND_DATA: SECOND_DATA };
使用对象表示法 - 属性 名称将始终为 SECOND_DATA