Como verificar qual versão da v8 está instalada com o meu NodeJS?


140

Como o V8 é instalado junto com os NodeJs? Qual versão é o meu mecanismo V8 atual?

Respostas:


119

Maneira fácil:
Digite na linha de comando:node -p process.versions.v8

Maneira do trabalhador:

  1. Digite node --versionpara obter a versão do Node.js.

  2. Ir para o Node.js Changelogs .

  3. Localize e abra o log de alterações da versão do Node.js.

  4. Procure notas contendo V8 to.


100
ou, você pode simplesmente perguntar ao nó qual versão está instalada via process.versions. Um pouco mais fácil do que procurar no log de alterações. node -e 'console.log(process.versions.v8);'
precisa

quando digito "node --version", não recebo um erro, mas também não recebo nenhuma informação ... apenas mostra o prompt novamente. Alguma idéia do porquê?
geoidesic 18/09/16

O link não é mais atualizado e, como Ben Taber apontou anos atrás, felizmente existe uma maneira muito mais direta e direta .
TJ Crowder

290

Solução de uma linha:
node -p process.versions.v8

Solução alternativa:
node -e "console.log(process.versions.v8)"


2
Acordado. Essa também é a única resposta que funciona no Windows. Todas as respostas de aspas simples não fazer nada estranhamente ...
Marc

37
node -p process.versions.v8é um pouco mais curto. Não que isso importe, mas talvez alguém se importe.
Slikts #

62

Basta executar npm version(não sei desde quando isso está disponível)

> 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
Melhor resposta para saber. Além disso, a CLI do NPM é um whackadoo - se você adicionar um argumento a ele, ele aumentará a versão no seu arquivo package.json, criará e marcará um commit do git. UX totalmente bizarro, mas isso é útil.
mitchell_st

o seu é a melhor resposta desta pergunta ... Infelizmente, só pode votar uma vez .. Obrigado
Daksh

31

Para verificar sua versão, verifique o valor no process.versionsREPL.

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

Além disso, você pode compilar o nó com outras versões da V8, se desejar. Obviamente, os resultados podem variar bastante aqui, dependendo das versões que você escolher.

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, eu tive que usar node -e console.log(process.versions.v8); nada estava sendo produzido de outra maneira.
Pimvdb

Parece que isso mudou no nó em algum momento, obrigado pela dica. Editou a resposta para refletir isso.
precisa

13

Você pode apenas digitar:

node -p process.versions.v8


9

Apenas por diversão, se você tiver cachos disponíveis no seu terminal, o seguinte deverá fornecer a versão da 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 exemplo, na minha caixa com node.js 0.4.7, recebo:

3.1.8.10

:)


3
Interessante como a definição de diversão pode variar de um indivíduo para outro :)
Arnaud Leyder

9

encontre a versão v8 instalada com o nó.

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

onde O objeto do processo é um global que fornece informações e controle sobre o processo atual do Node.js.

se você digitar apenas processo em repl repl, verá informações sobre o nó (por exemplo, versão do nó, versão v8, plataforma, informações sobre variáveis ​​de ambiente, etc.)


9

Se você estiver no Node.js. versão 7.7.3 ou similar, o comando é

$ node -p "process.versions"

Mas aqueles acima funcionam bem também.


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

2
Uma boa resposta sempre terá uma explicação do que está sendo feito e por que foi feito dessa maneira, não apenas para o OP, mas para futuros visitantes do SO.
Jay Blanchard

Voto negativo, porque não acrescenta nada de importante à resposta mais votada nessas perguntas, publicada há 3 anos.
Yaroslav Admin

4
Como isso não adiciona nada de importante? Ele adiciona a maneira correta, sugerida pelo nó, de descobrir qual versão é usada. nodejs.org/en/docs/es6/…
Philiiiiiipp

4

As outras respostas são ótimas para verificar sua versão atual. Há também uma tabela com todas as versões do Node.js. aqui: https://nodejs.org/en/download/releases/ . Trecho, por exemplo:

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

Você também pode verificar qualquer versão do nodejs v8 usando o docker, como o nó 10.7.0: docker run --rm -it node:10.7.0 bash -c "node -p process.versions"


0

v8 é fornecido com o Node.js. Você pode ver qual versão da v8 qualquer versão do Node.js está usando e quando entrou em produção, visualizando a v8 ChangeLogno noderepositório. Este é o mestre atual (se estiver construindo a partir da origem): https://github.com/nodejs/node/commits/master/deps/v8/ChangeLog

Para visualizar uma versão específica do Node.js, alterne a ramificação para essa versão e verifique o ChangeLoghistórico do arquivo s.

Histórico de log de alterações do Node.js

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.