javascript - objects - Array.prototype.concat() debajo del capó
javascript concatenate string variable (1)
Array
viene con JavaScript, por lo que depende de su motor de JavaScript cómo se implementa. Un motor JS es libre de implementarlo de cualquier manera. Lo más probable es que no use JavaScript porque podría ser demasiado lento o no ser posible porque necesitaría un motor de JavaScript con la función que está tratando de implementar para implementarlo ( consulte el arranque ).
En la mayoría de los navegadores, las funciones de código JavaScript se implementan en C / C ++. A continuación, se incluye un ejemplo de la fuente de la familia de navegadores Chrome / Chromium: https://code.google.com/p/chromium/codesearch#chromium/src/v8/src/array.js&sq=package:chromium&l=473
ArrayConcatJS
convierte en Array.prototype.concat
en la llamada InstallFunctions
en la línea 1519 y Kudos para esto va a apsillers .
Array.concat
para el motor de Rhino se puede encontrar aquí: https://github.com/mozilla/rhino/blob/master/src/org/mozilla/javascript/NativeArray.java en el método js_concat()
(como 1322).
¿Cómo veo qué código está dentro de la función concat? ¿Cómo hace lo que hace? ¿Alguien tiene una copia del código o una forma de verlo en la consola de navegadores?
console.dir no me da acceso al pasado
console.dir(Array.prototype.concat);
function concat() { [native code] }
arguments: null
caller: null
length: 1
name: "concat"
__proto__: function Empty() {}
<function scope>
No puedo o no sé cómo inspeccionar esto, pero debe haber una forma de profundizar en las funciones de JavaScript