Sync from Piper @314226556

PROTOBUF_SYNC_PIPER
diff --git a/js/message.js b/js/message.js
index c1736b3..f190894 100644
--- a/js/message.js
+++ b/js/message.js
@@ -417,7 +417,7 @@
  */
 jspb.Message.isArray_ = function(o) {
   return jspb.Message.ASSUME_LOCAL_ARRAYS ? o instanceof Array :
-                                            goog.isArray(o);
+                                            Array.isArray(o);
 };
 
 /**
@@ -1433,7 +1433,7 @@
   if (this.wrappers_) {
     for (var fieldNumber in this.wrappers_) {
       var val = this.wrappers_[fieldNumber];
-      if (goog.isArray(val)) {
+      if (Array.isArray(val)) {
         for (var i = 0; i < val.length; i++) {
           if (val[i]) {
             val[i].toArray();
@@ -1823,7 +1823,7 @@
  */
 jspb.Message.clone_ = function(obj) {
   var o;
-  if (goog.isArray(obj)) {
+  if (Array.isArray(obj)) {
     // Allocate array of correct size.
     var clonedArray = new Array(obj.length);
     // Use array iteration where possible because it is faster than for-in.
diff --git a/js/package.json b/js/package.json
index 14186be..7fd5e69 100644
--- a/js/package.json
+++ b/js/package.json
@@ -1,6 +1,6 @@
 {
   "name": "google-protobuf",
-  "version": "3.11.4",
+  "version": "3.12.2",
   "description": "Protocol Buffers for JavaScript",
   "main": "google-protobuf.js",
   "files": [