JS JSON对密钥和价值 [英] JS JSON Pair Key & Value

查看:42
本文介绍了JS JSON对密钥和价值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是从JS对象获取键和值的最佳方法:

Is this the best way to get the key and value from a JS object:

function jkey(p){for(var k in p){return k;}}
function jval(p){for(var k in p){return p[k];}}

var myobj = {'Name':'Jack'};

alert(jkey(myobj)+' equals '+jval(myobj));

还是有更直接或更快速的方法?

Or is there a more direct or faster way ??

我需要做的是能够分别调用键名和值.函数正常工作并返回键名和值,我只是想知道是否有更小的,更快的,更好的方法.

What I need to do is to me able to call the key-name and value seperately. the functions work and return the keyname and value, I just wondered if there was a smaller, faster, better way.

这是一个更好的示例,我想将key:value作为单独的变量访问,即{assistant:'XLH'},key = assistant,val ='XLH';

Here's a better example, I want to access the key:value as separate variables i.e {assistant:'XLH'}, key=assistant, val = 'XLH';

仅当我确定它是一对并且仅返回单个键和值时,我才使用它.

I only use this when I know for sure that it is a pair and only returns a single key and value.

formY={
    tab:[
        {
            tabID:'Main',
            fset:[
                    {
                        fsID:'Ec',
                        fields:[
                            {ec_id:'2011-03-002'},
                            {owner:'ECTEST'},
                            {assistant:'XLH'},
                            {ec_date:'14/03/2011'},
                            {ec_status:'Unreleased'},
                            {approval_person:'XYZ'},
                        ]
                    }
                ]
        }
        ]
}

推荐答案

最好避免循环两次对象.您可以这样做:

It would be better to avoid looping the object twice. You could do this:

function getKeyValue(obj) {
    for(var key in obj) {
        if(obj.hasOwnProperty(key)) {
            return {key: key, value: obj[key]};
        }
    }
}

并调用:

var kv = getKeyValue(obj);
alert(kv.key + ' equals ' + kv.value);

这篇关于JS JSON对密钥和价值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆