bob*_*000 1 javascript php jquery json
我有一个看起来像这样的JSON数组:
[{"RegDate":"31-03-2011"},{"RegDate":"29-07-2011"},{"RegDate":"09-08-2011"},{"RegDate":"09-08-2011"},{"RegDate":"09-08-2011"},{"RegDate":"12-08-2011"},{"RegDate":"15-08-2011"},{"RegDate":"15-08-2011"},{"RegDate":"23-08-2011"},{"RegDate":"07-09-2011"},{"RegDate":"09-09-2011"},{"RegDate":"13-10-2011"},{"RegDate":"13-10-2011"},{"RegDate":"13-10-2011"},{"RegDate":"25-10-2011"},{"RegDate":"25-10-2011"},{"RegDate":"03-11-2011"},{"RegDate":"03-11-2011"},{"RegDate":"11-11-2011"},{"RegDate":"16-11-2011"},{"RegDate":"18-11-2011"},{"RegDate":"21-11-2011"},{"RegDate":"02-12-2011"},{"RegDate":"02-12-2011"},{"RegDate":"12-12-2011"}]
Run Code Online (Sandbox Code Playgroud)
获取此json数组的代码如下所示:
var unavailableDates1 = jQuery.parseJSON('<?php echo json_encode($noticesDates) ?>');
Run Code Online (Sandbox Code Playgroud)
我也尝试获取该数组中的所有日期(最初是一个多维数组),并将其放在一个数组中:
var unavailableDates = ["9-3-2012", "14-3-2012", "15-3-2012"]; for example
Run Code Online (Sandbox Code Playgroud)
我不确定如何做到这一点,我尝试了一个foreach但没有成功.
所有帮助将不胜感激.
首先,这parseJSON是不必要的,实际上是危险的.拿出来:
var unavailableDates1 = <?php echo json_encode($noticesDates) ?>;
Run Code Online (Sandbox Code Playgroud)
然后,只需使用jQuery.map:
var unavailableDates = $.map(unavailableDates1, function(item) {
return item.RegDate;
});
Run Code Online (Sandbox Code Playgroud)
使用这样的字符串对于以下三个对象是危险的,例如:
{"key":"Backslash here: \\"}{"key":"I'm a horse!"}{"key":"Some\\backslash"}他们分别成为:
\\b成为\b退格控制字符)__ proto__ 你可以再次逃脱它,但没有必要; 有效的JSON始终是一个有效的JavaScript对象,您可以信任自己的PHP,不要在其中包含注入代码.