我正在尝试使用Coverage Chrome DevTools选项从JS文件中仅提取使用的javascript。我已经导出了coverage json文件,然后使用PHP脚本用substr提取了
:$target_js = 'js/input.js';
$json_string = 'coverage.json';
$output_filename = 'output.js';
$jsondata = file_get_contents($json_string);
$obj = json_decode($jsondata,true);
$output_js = '';
foreach( $obj as $arr ) {
if( strpos( $arr['url'], $target_js ) ) {
foreach ($arr['ranges'] as $name => $value) {
$length = $value['end'] - $value['start'];
$output_js .= substr($arr['text'], $value['start'], $length);
}
break;
}
}
echo $output_js;
file_put_contents($output_filename, $output_js);
从JS文件中提取导出的json文件中提到的从“开始”到“结束”的代码,将导致js文件损坏。
您是否知道DevTools中是否有错误,并且返回的范围不正确?或者也许是提取JS的其他方法? 谢谢