Comment vérifier quelle version de la v8 est installée avec mon NodeJS?

140

Comment V8 est-il installé avec NodeJs? Quelle est la version de mon moteur V8 actuel?

Lalith
la source

Réponses:

119

Méthode simple:
tapez la ligne de commande:node -p process.versions.v8

Manière de travailleur acharné:

  1. Tapez node --versionpour obtenir la version Node.js.

  2. Aller à la Node.js Changelogs .

  3. Recherchez et ouvrez le journal des modifications de version de Node.js approprié.

  4. Recherchez les notes contenant V8 to.

alienhard
la source
100
ou, vous pouvez simplement demander au nœud quelle version est installée via process.versions. Un peu plus facile que de parcourir le journal des modifications. node -e 'console.log(process.versions.v8);'
Ben Taber
quand je tape "node --version", je n'obtiens pas d'erreur mais je n'obtiens pas non plus d'informations ... montre simplement l'invite à nouveau. Une idée pourquoi?
geoidesic
Le lien n'est plus mis à jour, et comme Ben Taber l'a souligné il y a des années, il existe heureusement un moyen beaucoup plus direct et simple .
TJ Crowder
290

Solution en une ligne:
node -p process.versions.v8

Solution alternative:
node -e "console.log(process.versions.v8)"

Mike B.
la source
2
D'accord. C'est également la seule réponse qui fonctionne sous Windows. Toutes les réponses à guillemets simples ne font rien d'étrange ...
Marc
37
node -p process.versions.v8est un peu plus court. Non pas que cela compte, mais peut-être que quelqu'un s'en soucie.
slikts
62

Courez juste npm version(je ne sais pas depuis quand c'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' }
Peter Dotchev
la source
1
Meilleure réponse à savoir. De plus, la CLI de NPM est un whackadoo - si vous ajoutez un argument à cela, il incrémentera la version dans votre fichier package.json, créera et marquera un commit git. UX totalement bizarre, mais c'est utile.
mitchell_st
la vôtre est la meilleure réponse à cette question ... Malheureusement, je ne peux voter qu'une seule fois. Merci
Daksh
31

Pour vérifier votre version, vérifiez la valeur process.versionsdans le REPL.

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

De plus, vous pouvez compiler le nœud avec d'autres versions de V8 si vous le souhaitez. Évidemment, les résultats peuvent varier considérablement ici en fonction des versions que vous choisissez.

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

./configure
make
make install
Ben Taber
la source
1
+1, j'ai dû utiliser node -e console.log(process.versions.v8)cependant; rien n'était sorti autrement.
pimvdb
On dirait que cela a changé dans le nœud à un moment donné, merci pour le conseil. Modification de la réponse pour refléter cela.
Ben Taber
13

Vous pouvez simplement taper:

node -p process.versions.v8

Gaui
la source
9

Juste pour le plaisir, si vous avez curl disponible dans votre terminal, ce qui suit devrait vous donner la version 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

Par exemple, dans ma boîte avec node.js 0.4.7 j'obtiens:

3.1.8.10

:)

Mariano Iglesias
la source
3
Intéressant de voir comment la définition du plaisir peut varier d'un individu à l'autre :)
Arnaud Leyder
9

recherchez la version v8 installée avec le nœud.

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

où L' objet de processus est un global qui fournit des informations sur le processus Node.js actuel et un contrôle sur celui-ci.

si vous tapez simplement process dans le nœud repl, vous voyez des informations sur le nœud (c'est-à-dire la version du nœud, la version v8, la plate-forme, les informations sur les variables d'environnement, etc.)

Siyaram Malav
la source
9

Si vous êtes sur Node.js version 7.7.3 ou similaire, la commande est

$ node -p "process.versions"

Mais ceux ci-dessus fonctionnent bien aussi.

7rust
la source
8
node -pe 'this.process.versions'     # all versions
node -pe 'this.process.versions.v8'  # v8 version
Vadim
la source
2
Une bonne réponse aura toujours une explication de ce qui est fait et pourquoi cela a été fait de cette façon, non seulement pour le PO mais pour les futurs visiteurs de SO.
Jay Blanchard
Le vote négatif, car il n'ajoute rien d'important à la réponse la plus votée à cette question, publiée il y a 3 ans.
Administrateur de Yaroslav le
4
En quoi cela n'ajoute-t-il rien d'important? Il ajoute le moyen correct, suggéré par nœud, de savoir quelle version est utilisée. nodejs.org/en/docs/es6/…
Philiiiiiipp
4

Les autres réponses sont parfaites pour vérifier votre version actuelle. Il existe également un tableau avec toutes les versions de Node.js ici: https://nodejs.org/en/download/releases/ . Extrait par exemple:

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
ZachB
la source
0

Vous pouvez également vérifier n'importe quelle version de nodejs v8 à l'aide de docker, comme node 10.7.0: docker run --rm -it node:10.7.0 bash -c "node -p process.versions"

Geng Jiawen
la source
0

v8 est fourni avec Node.js. Vous pouvez voir quelle version de v8 n'importe quelle version de Node.js utilise et quand elle est entrée en production en affichant la v8 à ChangeLogpartir du noderéférentiel. Ceci est le maître actuel (si vous construisez à partir de la source): https://github.com/nodejs/node/commits/master/deps/v8/ChangeLog

Pour afficher une version spécifique de Node.js, basculez la branche vers cette version et vérifiez l' ChangeLoghistorique des fichiers.

Historique du journal des modifications Node.js

cchamberlain
la source