Object.values()
使用服務器端Object.values()收到以下錯誤:如何在Node.js的
TypeError: Object.values is not a function.
從this問題上的計算器 - 我看到Object.values()
是不是在所有的瀏覽器都支持。
但是我在服務器端使用Node.js中的函數 - 如何在Node.js中使用Object.values()
它看起來很直觀,就像Object.keys()
?
Object.values()
使用服務器端Object.values()收到以下錯誤:如何在Node.js的
TypeError: Object.values is not a function.
從this問題上的計算器 - 我看到Object.values()
是不是在所有的瀏覽器都支持。
但是我在服務器端使用Node.js中的函數 - 如何在Node.js中使用Object.values()
它看起來很直觀,就像Object.keys()
?
Object.values
是ES2017中的一項新功能。這是非常流血的優勢。 Node.js從版本7.0開始有完整的support for it。
6.8.1支持它,但它被認爲不穩定並被鎖定在--harmony
標誌後面。
您可以:
--harmony
Object.values()是在版本ECMAScript2017的狀態「Draft」中,這裏的規範是:ECMAScript 2017 Draft (ECMA-262) The definition of 'Object.values' in that specification.。
Object.values()
方法以與for ... in循環提供的順序相同的順序返回給定對象自己的可枚舉屬性值的數組(不同之處在於for-in循環枚舉了原型鏈中的屬性以及)。
,而無需在的NodeJS改變什麼環境,你可以通過使用Object.keys()返回鍵的排列和鏈接一個Array.prototype.map()方法achive相同返回對象的值所需的陣列:
const obj = {
foo: "bar",
baz: 42
},
// Object.values()
objValues = Object.values(obj),
// Object.keys() and map(),
objKeysMap = Object.keys(obj).map((k) => obj[k]);
console.log('objValues:', objValues);
console.log('objKeysMap:', objKeysMap);
Lodash是一個非常棒的工具來簡化您的JavaScript代碼。您可以使用_.values
:
var _ = require('lodash');
_.values({ a: 'a' }) // => ['a']
3替代來繞去,如果你不希望升級節點
我正在開發一個AWS Lambda,現在我標記了相同的問題,我解決了這個簡單的線(假設a是對象) const values = Object.keys(a).map(k => a[k]);
「但我使用它在服務器端代碼」 - 使用Node.js? – evolutionxbox
的問題是如title中所述找到如何在node.js中使用Object.values()。我編輯了一些問題,以便在正文中明確表達。爲什麼downvote它不是重複的? – npr
我沒有downvote。由於沒有特定的性質,我認爲這是一個重複,現在已經收回。 – evolutionxbox