Просто объявление Number
не изменяет исходное значение.Если вы хотите, чтобы свойство объекта имело imdbRating
значение Number, вам необходимо назначить it.
var watchList=[{"Metascore":"74","imdbRating":"8.8","imdbVotes":"1,446,708","imdbID":"tt1375666","Type":"movie","Response":"True"},{"Metascore":"74","imdbRating":"8.6","imdbVotes":"910,366","imdbID":"tt0816692","Type":"movie","Response":"True"},{"Metascore":"82","imdbRating":"9.0","imdbVotes":"1,652,832","imdbID":"tt0468569","Type":"movie","Response":"True"}];
watchList.forEach(function(list){
list.imdbRating = Number(list.imdbRating);
});
console.log(watchList);
Обратите внимание, что объекты передаются по ссылке в Javascript - изменение чего-либо в ссылке на объект изменит исходный объект, поэтому я использовал forEach
вместо .map
.Если вы хотите создавать совершенно новые объекты (а не изменять исходные), используйте распространение объекта, а также map
:
var watchList=[{"Metascore":"74","imdbRating":"8.8","imdbVotes":"1,446,708","imdbID":"tt1375666","Type":"movie","Response":"True"},{"Metascore":"74","imdbRating":"8.6","imdbVotes":"910,366","imdbID":"tt0816692","Type":"movie","Response":"True"},{"Metascore":"82","imdbRating":"9.0","imdbVotes":"1,652,832","imdbID":"tt0468569","Type":"movie","Response":"True"}];
const newList = watchList.map(({ imdbRating, ...rest }) => ({
imdbRating: Number(imdbRating),
...rest,
}));
console.log(newList);