¿Cómo verificar qué versión de v8 está instalada con mi NodeJS?


140

¿Cómo se instala V8 junto con NodeJs? ¿Qué versión es mi motor V8 actual?

Respuestas:


119

Manera fácil:
escriba en la línea de comando:node -p process.versions.v8

Trabajador duro:

  1. Escriba node --versionpara obtener la versión Node.js.

  2. Ir a los Node.js registros de cambios .

  3. Busque y abra el registro de cambios de versión Node.js apropiado

  4. Busque notas que contengan V8 to.


100
o simplemente puede preguntarle al nodo qué versión está instalada a través de process.versions. Un poco más fácil que buscar en el registro de cambios. node -e 'console.log(process.versions.v8);'
Ben Taber

cuando escribo "node --version" no recibo un error pero tampoco obtengo ninguna información ... solo muestra el mensaje nuevamente. ¿Alguna idea de por qué?
Geoidesic

El enlace ya no se actualiza y, como Ben Taber señaló hace años, afortunadamente hay una forma mucho más directa y directa .
TJ Crowder

290

Solución de una línea:
node -p process.versions.v8

Solución alternativa:
node -e "console.log(process.versions.v8)"


2
Convenido. Esta es también la única respuesta que funciona en Windows. Todas las respuestas individuales de cotización no hacen nada extraño ...
Marc

37
node -p process.versions.v8Es un poco más corto. No es que importe, pero tal vez a alguien le importe.
slikts

62

Simplemente ejecute npm version(no sé desde cuándo está disponible)

> npm version
{ http_parser: '1.0',
  node: '0.10.35',
  v8: '3.14.5.9',
  ares: '1.9.0-DEV',
  uv: '0.10.30',
  zlib: '1.2.8',
  modules: '11',
  openssl: '1.0.1j',
  npm: '1.4.28',
  xsjs: '0.1.5' }

1
La mejor respuesta para saber. Además, la CLI de NPM es una locura: si agrega un argumento a esto, incrementará la versión en su archivo package.json, hará y etiquetará un git commit. UX completamente extraño, pero esto es útil.
mitchell_st

la suya es la mejor respuesta a esta pregunta ... Lamentablemente, solo puedo votar una vez ... Gracias
Daksh el

31

Para verificar su versión, verifique el valor en process.versionsREPL.

node -e "console.log(process.versions.v8);"

Además, puede compilar el nodo con otras versiones de V8 si lo desea. Obviamente, los resultados pueden variar ampliamente aquí dependiendo de las versiones que elija.

cd node-v0.x.x
rm -rf deps/v8
git clone http://github.com/v8/v8.git deps/v8

./configure
make
make install

1
+1, tuve que usar node -e console.log(process.versions.v8)sin embargo; de lo contrario no se emitía nada.
pimvdb

Parece que eso cambió en el nodo en algún momento, gracias por el consejo. Editó la respuesta para reflejar eso.
Ben Taber

13

Solo puedes escribir:

node -p process.versions.v8


9

Solo por diversión, si tiene curl disponible en su terminal, lo siguiente debería darle la versión v8:

V=`cat /usr/include/node/node_version.h | grep -E '^\#define NODE_(MAJOR|MINOR|PATCH)_VERSION' | sed -e 's/^[^0-9]*//'`; V=`echo $V | sed -e 's/ /\./g'`; URL=https://github.com/joyent/node/raw/v$V/ChangeLog; curl --silent $URL | grep 'Upgrade v8' | head -1 | sed -e 's/^.* //'; unset V; unset URL

Por ejemplo, en mi caja con node.js 0.4.7 obtengo:

3.1.8.10

:)


3
Interesante cómo la definición de diversión puede variar de un individuo a otro :)
Arnaud Leyder

9

encuentre la versión v8 instalada con el nodo.

$ node
> process.versions.v8
'5.1.281.83'
>

donde El objeto de proceso es un global que proporciona información y control sobre el proceso actual de Node.js.

si solo escribe proceso en respuesta de nodo, verá información sobre el nodo (es decir, versión de nodo, versión v8, plataforma, información de variables de entorno, etc.)


9

Si estás en Node.js versión 7.7.3 o similar, el comando es

$ node -p "process.versions"

Pero los de arriba también funcionan bien.


8
node -pe 'this.process.versions'     # all versions
node -pe 'this.process.versions.v8'  # v8 version

2
Una buena respuesta siempre tendrá una explicación de lo que se está haciendo y por qué se hizo de esa manera, no solo para el OP sino para los futuros visitantes de SO.
Jay Blanchard

Votación negativa, porque no agrega nada importante a la respuesta más votada en esta pregunta, que se publicó hace 3 años.
Yaroslav Admin

44
¿Cómo es que esto no agrega nada importante? Agrega la forma correcta, sugerida por el nodo, de averiguar qué versión se utiliza. nodejs.org/en/docs/es6/…
Philiiiiiipp

4

Las otras respuestas son excelentes para verificar su versión actual. También hay una tabla con todas las versiones de Node.js aquí: https://nodejs.org/en/download/releases/ . Extracto por ejemplo:

Version             Date        V8          npm     NODE_MODULE_VERSION
Node.js 11.0.0      2018-10-23  7.0.276.28  6.4.1   67
Node.js 10.13.0     2018-10-30  6.8.275.32  6.4.1   64
Node.js 10.12.0     2018-10-10  6.8.275.32  6.4.1   64

0

También puede verificar cualquier versión de nodejs v8 usando docker, como node 10.7.0: docker run --rm -it node:10.7.0 bash -c "node -p process.versions"


0

v8 se incluye con Node.js. Puede ver qué versión de v8 está usando cualquier versión de Node.js y cuándo entró en producción al ver la v8 ChangeLogdesde el noderepositorio. Este es el maestro actual (si se construye desde la fuente): https://github.com/nodejs/node/commits/master/deps/v8/ChangeLog

Para ver una versión específica de Node.js, cambie la rama a esa versión y verifique el ChangeLoghistorial del archivo s.

Node.js cambia el historial de registro

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.