[FUNC]查看数组内容

kiliwalk

关注

阅读 69

2023-04-24


I have a function that lets me look at array contents from the String Things library.

arr:=["foo","bar","hello",[1,2,3]]
; MsgBox  % PrintArray(arr)
MsgBox  % Obj2Str(arr)
return
; http://www.autohotkey.com/board/topic/93300-what-format-to-store-settings-in/?p=588734
;parseJson2Str(obj) {
Obj2Str(obj) {
	str := "" , array := true
	for k in obj {
		if (k == A_Index)
			continue
		array := false
		break
	}
	for a, b in obj
		str .= (array ? "" : "'" a "': ") . (IsObject(b) ? Obj2Str(b) : "'" b "'") . ", "	
	str := RTrim(str, " ,")
	return (array ? "[" str "]" : "{" str "}")
}

arr:=["foo","bar","hello",[1,2,3]]
MsgBox  % st_printArr(arr)
return

st_printArr(array, depth=5, indentLevel="")
{
   for k,v in Array
   {
      list.= indentLevel "[" k "]"
      if (IsObject(v) && depth>1)
         list.="`n" st_printArr(v, depth-1, indentLevel . "    ")
      Else
         list.=" => " v
      list.="`n"
   }
   return rtrim(list)
}

 

printArr(arr)
{
  s:="["
  for k,v in arr
  {
    s.=v . ","
  }
  s.="]"
  return s
}

 

 

 

 

 

https://autohotkey.com/boards/viewtopic.php?f=6&t=788&p=5942#p5942

精彩评论(0)

0 0 举报