javascript - javascript 中的 Object.assign(object1[i])
问题描述
假设 object1 有 10 个对象。这段代码将object1分配给object2
const object2 = Object.assign(object1);
但我只想使用 for 循环从 object1 分配 5 个对象。
for (let i = 0; i < 5; i++) {
object2 = Object.assign(object1[i]);
}
// but this one won't work.
有任何想法吗?
解决方案
- 我假设 obj1 和 obj2 都是数组
var obj1 = []
for (let i=0; i< 10; i++)
{
obj1.push({key: i});
}
var obj2 = []
for (let i=0; i< 5; i++)
{
obj2.push(obj1[i]);
}
- 我假设你正在学习
Object.assign()
。用于将原始对象克隆或修改为目标对象
var obj1 = {key:1, foo: 'bar'};
var obj2 = Object.assign({}, obj1); //clone all properties
var obj3 = Object.assign({foo: 'not bar', newprop: 'anything'}, obj1); //copy the original, modify `foo` property and add `newprop`
//you can iterate through properties with this
for (var property in obj3) {
if (obj3.hasOwnProperty(property)) {
// do stuff, may be filter which property you want to get, etc
}
}
推荐阅读
- node.js - webpack-cli 错误:未知选项“--no-progress”
- node.js - Express - 无法查找视图
- angular - 如何测试 locationStrategy.onPopState?
- java - 我只需要在 oracle 的 DECODE 函数中转义单引号,需要帮助吗?
- c# - Unity Tilemaps, Single Tile Collision detection for highlighting Tiles/Cells, 奇怪的行为
- java - 有没有办法在不提供整个对象的情况下更新 MongoDB 中的多个文档?
- python - 在 Python 中对 np.where() 索引进行 Numpy 快速迭代
- python - 如何在python中使用正则表达式匹配可选的整个电话号码
- c++ - 为什么在我的析构函数中没有调用 std::terminate
- linux - Linux 目录名称包含 \t