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?

Lalith
fonte

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.

alienígena
fonte
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)"

Mike B.
fonte
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' }
Peter Dotchev
fonte
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
Ben Taber
fonte
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

Gaui
fonte
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

:)

Mariano Iglesias
fonte
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.)

Siyaram Malav
fonte
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.

7rust
fonte
8
node -pe 'this.process.versions'     # all versions
node -pe 'this.process.versions.v8'  # v8 version
Vadim
fonte
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
ZachB
fonte
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"

Geng Jiawen
fonte
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

cchamberlain
fonte