javaScript 获取对象数组中某几项
使用JavaScript中的map()或forEach()方法进行遍历
要获取对象数组中的某几项,你可以使用JavaScript中的map()或forEach()方法进行遍历,并通过对象的键来获取相应的值。以下是一个示例代码:
// 示例对象数组
const objArray = [
{ id: 1, name: 'John', age: 25 },
{ id: 2, name: 'Jane', age: 30 },
{ id: 3, name: 'Tom', age: 35 },
{ id: 4, name: 'Alice', age: 40 }
];
// 要获取的属性键
const desiredKeys = ['name', 'age'];
// 使用map()方法获取对应的属性值
const result = objArray.map(obj => {
const newObj = {};
desiredKeys.forEach(key => {
newObj[key] = obj[key];
});
return newObj;
});
console.log(result);</code></pre><p>上述代码中,我们首先定义了一个对象数组 <code>objArray</code>,其中包含了每个对象的 <code>id</code>、<code>name</code> 和 <code>age</code> 属性。然后,我们定义了一个数组 <code>desiredKeys</code>,用于指定我们想要获取的属性键。</p><p>接下来,我们使用 <code>map()</code> 方法遍历 <code>objArray</code> 数组,并使用 <code>forEach()</code> 方法遍历 <code>desiredKeys</code> 数组,将每个键对应的属性值存储到新的对象 <code>newObj</code> 中。最后,将 <code>newObj</code> 添加到 <code>result</code> 数组中。</p><p>最后,我们通过 <code>console.log()</code> 打印出 <code>result</code> 数组,其中包含了我们所需的属性键值对应的对象数组。</p><h3 id="item-0-3">更简便方法 -- 直接使用map便利 -- 推荐此中方法</h3><p>要获取对象数组中的某几项,可以使用 <code>map()</code> 方法来遍历数组,并通过解构赋值来选择所需的属性。以下是一个示例代码:</p><pre><code class="javascript">// 示例对象数组
const objArray = [
{ id: 1, name: 'John', age: 25 },
{ id: 2, name: 'Jane', age: 30 },
{ id: 3, name: 'Tom', age: 35 },
{ id: 4, name: 'Alice', age: 40 }
];
// 获取所需的属性
const desiredProps = objArray.map(({ name, age }) => ({ name, age }));
console.log(desiredProps);</code></pre><p>上述代码中,我们首先定义了一个对象数组 <code>objArray</code>,其中包含了每个对象的 <code>id</code>、<code>name</code> 和 <code>age</code> 属性。</p><p>然后,我们使用 <code>map()</code> 方法遍历 <code>objArray</code> 数组,并通过解构赋值来选择所需的 <code>name</code> 和 <code>age</code> 属性。在这个例子中,我们将解构赋值用于回调函数的参数部分,这样我们就能直接选择所需的属性。最后,我们通过返回一个新的对象来创建包含所需属性的对象数组。</p><p>最后,我们通过 <code>console.log()</code> 打印出 <code>desiredProps</code> 数组,其中包含了我们所需的属性对应的对象数组。</p><p>更多精彩内容,请<strong>微信搜索“<code>前端爱好者</code>“</strong>, <strong><a href="https://link.segmentfault.com/?enc=waGDgRDlMR2ARZFSutq35w%3D%3D.BU5O1UcGbxU3Htqvvbd%2BIk%2Fms5bjcB%2B3RzXxoNYZ0eOHVvTMGuPNBkCiubp8kWmPDQxbGm5SLhCbmybmyxPI8CDFCZzpzHNybQMzWTwQLJFWZpyqvg8qQ9f8Jw2RJ7BT8X9bbwTJR0stk0XwFzvzmI2%2B%2BvYdrSHww0Gs0jywlTYURYO2Z0xFmSdhvD%2BN7uw9pRzLDc%2FfuZQv6I0ua%2BSMn6x%2FEIcnPtonpZBuvhPqoAWYTf5F%2BN4iPbORUeJGxIvE" rel="nofollow" target="_blank">戳我</a> 查看</strong> 。</p><h2 id="item-0-4">javaScript 获取url参数值</h2><p>在 JavaScript 中,你可以使用以下方法获取 URL 参数的值:</p><h3 id="item-0-5">使用 <code>URLSearchParams</code> 对象:</h3><pre><code class="javascript">// 假设 URL 为 http://example.com/?name=John&age=30
const urlParams = new URLSearchParams(window.location.search);
const name = urlParams.get('name');
const age = urlParams.get('age');
console.log(name); // 输出 "John"
console.log(age); // 输出 "30"</code></pre><h3 id="item-0-6">使用正则表达式和 <code>match()</code> 方法:</h3><pre><code class="javascript">// 假设 URL 为 http://example.com/?name=John&age=30
const url = window.location.href;
const regex = /[?&]([^=#]+)=([^&#]*)/g;
let match;
const params = {};
while ((match = regex.exec(url))) {
const key = decodeURIComponent(match[1]);
const value = decodeURIComponent(match[2]);
params[key] = value;
}
console.log(params.name); // 输出 "John"
console.log(params.age); // 输出 "30"</code></pre><p>这些方法都可以帮助你获取 URL 中的参数值。</p><p>第一种方法使用了 <code>URLSearchParams</code> 对象,它是一个内置对象,提供了方便的操作 URL 查询参数的方法。</p><p>第二种方法则使用正则表达式来解析 URL 字符串,并将参数存储在一个对象中。你可以根据自己的需要选择其中一种方法。</p><p></p>