繁体   English   中英

Javascript-检查对象中是否存在密钥

[英]Javascript - Check if key exists in object

我正在用Javascript构建一个对象,以解析uri内容并将其键/值对附加到它。 但是,我坚持如何确定密钥是否存在。 这是代码:

var uri = {
    segments : {},
    parse : function() {
        var segments = {};
        var parts;
        var s;

        parts = location.href.split('/');
        parts = parts[3].split('?');
        parts = parts[1].split('&');

        for (var i = 0; i < parts.length; i++) {
            s = parts[i].split('=');
            segments[s[0]] = s[1];
        }

        uri.segments = segments;

        return segments;
    },
    segment : function(key) {
        if (uri.segments.length == 0)
        {
            uri.parse();
        }

        /* before was 'key in uri-segments' */      
        if (Object.prototype.hasOwnProperty.call(uri.segments, key))
        {
            return uri.segments[key];
        }
        else
        {
            return false
        }
    },
};

编辑 :完整代码

使用hasOwnProperty方法检查密钥是否存在:

// hasOwnProperty from the objects prototype, to avoid conflicts
Object.prototype.hasOwnProperty.call(uri.segments, key);
//                                   ^ object      ^ key

暂无
暂无

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

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