【问题标题】:Getting the value of a specific key in an object through a function [duplicate]通过函数获取对象中特定键的值[重复]
【发布时间】:2018-05-20 22:59:22
【问题描述】:

作为练习,我正在尝试编写一个名为getValue() 的函数,它接受两个参数,objkey

这与通过属性获取对象的索引无关。

该函数应传入对象的名称 (obj) 和对象属性的名称 (key),返回与该属性关联的值。如果没有值(即对象中不存在该属性),getValue() 应该返回 undefined。只要命名属性确实存在,函数就应该返回其关联值。

我编写了一个有效的函数,但前提是属性名为key。这当然不是我的想法。

function getValue(obj, key) {
	this.obj = {};
	this.key = obj.key;
	const val = function() {
		return obj.key;
	};
	return val();
}

var theObject = {nokey: 'my_value'};
var output = getValue(theObject, 'nokey');
console.log(output);
// --> 'should return 'my_value' but
// but returns undefined

【问题讨论】:

  • 我之前看过但找不到这个精确问题的答案。链接?
  • 我真的不明白链接到的问题和答案与创建一个函数有何关系,该函数通过传入对象的名称和对象的名称从对象返回属性的值键。

标签: javascript object key-value


【解决方案1】:

由于您传递了对象本身,因此只需使用括号表示法访问该属性:

function getValue(obj, key) {
  return obj[key];
}

var theObject = {nokey: 'my_value'};
console.log(getValue(theObject, 'nokey'));

var object2 = {foo: 'bar'};
console.log(getValue(object2, 'baz'));

【讨论】:

  • 呃。令人尴尬的简单解决方案。谢谢。
猜你喜欢
  • 1970-01-01
  • 2017-08-22
  • 1970-01-01
  • 2021-08-08
  • 1970-01-01
  • 1970-01-01
  • 2016-10-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多