js-数据转换

  <script type="text/javascript">
   var msg = '{"code": 0, "data": 2, "message": "ok!"}'
   msg = typeof msg == 'object'? msg: JSON.parse(msg);
   console.log(typeof msg); // jq下是$.parseJSON

   var arrStr = '[1, 2, 3]';
   arrStr = Array.isArray(arrStr)? arrStr: JSON.parse(arrStr);
   console.log(typeof arrStr, arrStr instanceof Array); // object true

   var numStr = '11'
   numStr = typeof numStr == 'number'? numStr: Number(numStr);
   console.log(typeof numStr);

   var arrStr2 = '[1, 2, 3, 4]';
   arrStr2 = arrStr2.replace(/([d,]*)/).split(',');
   console.log(typeof arrStr2);

   //区分object ,function , array
   var array = [{x:1}, function name() {}, [1]];
   var index = parseInt(Math.random()*array.length);
   var target = array[index];
   console.log(index, typeof array[index],target instanceof Function );
   type = target instanceof Function ? 'function': target instanceof Array ? 'array': 'object';
   console.log(type);
  </script>
 

     注:JSON.parse函数,返回结果为对象或者数组,此方法与eval能达到相同的效果,简单易于使用,但此方法不支持IE6、IE7标准模式.下面的方法可兼容ie6
     JSON.parse(jsonstr); // 可以将json字符串转换成json对象
     JSON.stringify(jsonobj); //可以将json对象转换成json对符串

  

原文地址:https://www.cnblogs.com/manchun/p/5140338.html