JavaScript Lodash_.get() 方法
什么是 _.get() 方法
此函数用于从对象的路径中获取值。如果给定路径处的值为undefined,则返回默认值。
语法
_.get(object,specificPath,[defaultValue])
此函数接受三个参数,如下所示:
- Object: 这是一个带有路径的对象,我们从该路径获取值。
- specificPath: 该参数将是数组或字符串类型。这将表示我们想要使用_.get()函数获取的属性或属性。
- defaultValue: 这是_.get()函数的默认值。如果函数返回undefined,则将返回此值。
返回值: 此函数将返回指定路径上存在的值或默认值。
我们将看到与_.get()函数相关的一些示例:
示例1
JavaScript代码:
// importing the library
const _ = require('lodash');
//object for the _.get() method
var myObj = { 'p': [{ 'javatpoint': { 'interns': 69 } }] };
//applying the _.get() method
var result =_.get(myObj, 'p[0].javatpoint.interns');
//printing the resultant variable
console.log(result);
输出:
69
解释:
在上面的代码中,我们导入了lodash库来使用_.get()
函数。现在,我们创建了一个包含嵌套对象数组的对象。因此,我们可以使用点(.
)运算符。然后,我们在对象上使用_.get()
函数,并使用字符串中的点(.)运算符提供要获取的值。因此,我们得到了结果为69,并使用console.log()语句打印出来。
示例2
JavaScript代码:
// importing the library
const _ = require('lodash');
//object for the _.get() method
var myObj = { 'p': [{ 'javatpoint': { 'interns': 69 } }] };
//applying the _.get() method
var result =_.get(myObj, ['p','0','javatpoint','interns']);
//printing the resultant variable
console.log(result);
输出:
69
解释:
在上述代码中,我们导入了lodash库以使用_.get()
函数。现在,我们创建了一个包含嵌套对象的数组对象。所以我们知道,我们可以使用点(.)操作符。然后我们在对象上使用了_.get()
函数,并以字符串数组的形式提供了路径,而不是单个字符串。现在字符串数组的每个元素都表示我们通过点(.)操作符访问的值或元素。因此,我们得到了结果69,并使用console.log()语句打印出来。
示例3
JavaScript代码:
// importing the library
const _ = require('lodash');
//object for the _.get() method
var myObj = { 'p': [{ 'javatpoint': { 'interns': 69 } }] };
//applying the _.get() method
var result =_.get(myObj, ['p','javatpoint','interns'],'defaultValue');
//printing the resultant variable
console.log(result);
输出:
defaultValue
解释:
在上面的代码中,我们导入了lodash库来使用_.get()
函数。现在,我们创建了一个包含嵌套对象数组的对象。所以,正如我们所知,我们可以使用点(.)操作符。然后我们在对象上使用了_.get()
函数,并以字符串数组的形式提供了路径,而不是单个字符串。现在,字符串数组的每个元素将代表我们通过点(.)操作符访问的值或元素。但我们提到了错误的路径,以便它将解析值为undefined。现在我们已经设置了一个默认值,所以结果将是默认值,并使用console.log()语句打印它。
示例4
JavaScript代码:
// importing the library
const _ = require('lodash');
//object for the _.get() method
var myObj = { 'friend': [{ 'Shivani': { 'age': 21 } },{ 'Ayush': { 'age': 20 } },{ 'Gopal': { 'age': 22 } },{ 'Mansi': { 'age': 19 } }] };
//applying the _.get() method
var result =_.get(myObj, ['friend','Ankit','age'],23);
//printing the resultant variable
console.log(result);
输出:
23
解释:
在上面的代码中,我们导入了lodash库来使用_.get()
函数。现在,我们创建了一个包含嵌套对象数组的对象。因此,我们可以使用点(.)运算符。然后,我们在对象上使用了_.get()
函数,并以字符串数组的形式提供了路径,而不是单个字符串。现在,字符串数组的每个元素将表示我们通过点(.)运算符访问的值或元素。但我们提供了错误的路径,以使其解析为undefined的值。我们可以将默认值设置为我们所需的任何数据类型。因此,我们将默认值设置为23。由于’Ankit’在数组中不存在,它将从默认值解析其年龄,并且结果将是23,我们将使用console.log()语句将其打印出来。