<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对符串