在给对象设置属性时, 如果对象不存在很容易报错.
有些场景, 在对对象数组处理时, 设置对象属性前判断对象是否存在. 与其这样, 还不如直接初始化为空对象数组.
本文主要涉及到一些容易忽略的知识点:
Array.prototype.fill()
的使用.- 简单类型和复杂类型赋值/复制、传参的区别.
- 空单元数组的弊端.
- 箭头函数中的
return
和this
. Function.prototype.apply()
的非常规使用.
9个考生就来了6个
考试时, 每个考生都有自己位置. 考生对照着可以很容易在考场里找到自己的座位.
秉着公平、公正、公开的原则, 考生被稀疏地散布在考场的各个角落.
复制代码
假设考场 3 ✖️3 排列, 考生的信息:
[{
"row":1,"col":1,"name":"Ada"},
{
"row":3,"col":3,"name":"Aaron"},
{
"row":1,"col":2,"name":"Aditi"},
{
"row":3,"col":2,"name":"Aditi"},
{
"row":1,"col":3,"name":"Aditi"},
{
"row":3,"col":1,"name":"Abbott"}]
复制代码
将考场位置做成一个表格, 对考生位置按排统计, 来标注考生出勤情况.
[{
"row":1,"col_1":"Ada","col_2":"Aditi","col_3":"Aditi"},
{},
{
"row":3,"col_3":"Aaron","col_2":