JS 빈 대상 인지 판단 {}

1733 단어
판단 1. JSON. stringify () 이용
if(JSON.stringify(accounts) == "{}"){...}
  : easyui tree 
data-options="onClick: function(node){										console.info(node);
	    // node attribute     ,           ,
	    //    url  ,    2;      ,   1
	    //        node.attributes=={},        ,           ,  __proto__
		var url = JSON.stringify(node.attributes)=='{}'?'':'${pageContext.request.contextPat                            h}'+node.attributes.url;
		addTab({title:node.text,href:url});
														}"
/*      attributes           ,    if(node.attributes.url){flag = true}*/

판단 2: 순환 대상 속성 이용
/* 
 *           (         )。 //                   
 *              ,           。 
 */
function isOwnEmpty(obj) 
{ 
    for(var name in obj) 
    { 
        if(obj.hasOwnProperty(name)) 
        { 
            return false; 
        } 
    } 
    return true; 
}; 
 
/* 
 *           (         )。 
 *             ,           (     hasOwnProperty)。 
 */
function isEmpty(obj) 
{ 
    for (var name in obj)  
    { 
        return false; 
    } 
    return true; 
};

참고 로 JSON. parse () 와 JSON. stringify () 의 차이 점:
parse 는 json 대상 을 문자열 에서 해석 하 는 데 사 용 됩 니 다. 예 를 들 어
var str = '{"name":"huangxiaojian","age":"23"}'
결과:
JSON.parse(str)
Object
  • age: "23"
  • name: "huangxiaojian"
  • __proto__: Object

  • 주의: 작은 따옴표 는 {} 에 쓰 여 있 으 며, 모든 속성 명 은 작은 따옴표 로 써 야 합 니 다. 그렇지 않 으 면 이상 이 발생 합 니 다.
    stringify () 는 대상 에서 문자열 을 분석 하 는 데 사 용 됩 니 다. 예 를 들 어
    var a = {a:1,b:2}
    결과:
    JSON.stringify(a)
    "{"a":1,"b":2}"

    좋은 웹페이지 즐겨찾기