[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_border.cpp b/fxjs/cjs_border.cpp
index 24d50ff..95693f4 100644
--- a/fxjs/cjs_border.cpp
+++ b/fxjs/cjs_border.cpp
@@ -11,8 +11,7 @@
     {"b", JSConstSpec::String, 0, "beveled"},
     {"d", JSConstSpec::String, 0, "dashed"},
     {"i", JSConstSpec::String, 0, "inset"},
-    {"u", JSConstSpec::String, 0, "underline"},
-    {0, JSConstSpec::Number, 0, 0}};
+    {"u", JSConstSpec::String, 0, "underline"}};
 
 int CJS_Border::ObjDefnID = -1;
 
@@ -20,5 +19,5 @@
 void CJS_Border::DefineJSObjects(CFXJS_Engine* pEngine) {
   ObjDefnID =
       pEngine->DefineObj("border", FXJSOBJTYPE_STATIC, nullptr, nullptr);
-  DefineConsts(pEngine, ObjDefnID, ConstSpecs);
+  DefineConsts(pEngine, ObjDefnID, ConstSpecs, FX_ArraySize(ConstSpecs));
 }