原则就是每次最外边的四条边剥掉
分三种情况
m==n(方形)最简单,最后二维数组套一个字符
m>n(宽形)最后m为奇数可能会出现只剩一行的情况
m<n(窄形)最后n为奇数可能会出现只剩一列的情况
var spiralOrder = function (matrix) {
let res = []
//每次剃掉四个边
//会出现两种情况
//m>=n比较简单最后会剩下一行,验证m=1就直接返回
//m<n的时候会出现一列的情况n=1,逐行遍历之后返回
function square(arr) {
let m = arr.length
if (m == 0) return
if (m == 1