[js] Convert to using size instead of sentinels

This CL changes the DefineMethod, DefineProps and DefineConsts methods
to pass a size instead of depending on a sentinel value in the
definition arrays.

Change-Id: Ie054544124290c0833a8b21af175a203ca99591a
Reviewed-on: https://pdfium-review.googlesource.com/20551
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
diff --git a/fxjs/cjs_util.cpp b/fxjs/cjs_util.cpp
index c7bf027..57267ad 100644
--- a/fxjs/cjs_util.cpp
+++ b/fxjs/cjs_util.cpp
@@ -58,9 +58,11 @@
 }  // namespace
 
 const JSMethodSpec CJS_Util::MethodSpecs[] = {
-    {"printd", printd_static},         {"printf", printf_static},
-    {"printx", printx_static},         {"scand", scand_static},
-    {"byteToChar", byteToChar_static}, {0, 0}};
+    {"printd", printd_static},
+    {"printf", printf_static},
+    {"printx", printx_static},
+    {"scand", scand_static},
+    {"byteToChar", byteToChar_static}};
 
 int CJS_Util::ObjDefnID = -1;
 
@@ -69,7 +71,7 @@
   ObjDefnID =
       pEngine->DefineObj("util", FXJSOBJTYPE_STATIC,
                          JSConstructor<CJS_Util, util>, JSDestructor<CJS_Util>);
-  DefineMethods(pEngine, ObjDefnID, MethodSpecs);
+  DefineMethods(pEngine, ObjDefnID, MethodSpecs, FX_ArraySize(MethodSpecs));
 }
 
 util::util(CJS_Object* pJSObject) : CJS_EmbedObj(pJSObject) {}