Open1
package-lock.jsonってなぁに

何者
package.json
をnpm install
した際に、実際にインストールされたパッケージのバージョンが記載されているファイル。
存在意義
冪等性担保。
package.json
はセマンティックバージョンの記述方法により、1.4.0以上
みたいな意味合いを持たせることができるので、同じpackage.json
から違うバージョンのパッケージがインストールされる場合がある。
一方package-lock.json
はpackage.json
をnpm install
した際に、実際にインストールしたパッケージのバージョンを管理しているので、これを使えば確実に同じバージョンのパッケージをインストールすることができる。
というわけ。
読み方
またの機会に。