Javascript 在两个字符串之间添加虚线以生成等长线

Javascript 在两个字符串之间添加虚线以生成等长线,javascript,Javascript,我有很多人 const family = [{name: 'Mike', age: 1}, {name: 'Monique', age: 99}] family.map(member => ??) 所需输出为 Mike ......... 1 Monique ..... 99 数量。第1行和第2行是不同的。你能帮我想想吗?谢谢 const maxLength = 100; family.map(member => { let line = new Array(maxLen

我有很多人

const family = [{name: 'Mike', age: 1}, {name: 'Monique', age: 99}]
family.map(member => ??)
所需输出为

Mike ......... 1
Monique ..... 99
数量。第1行和第2行是不同的。你能帮我想想吗?谢谢

const maxLength = 100;
family.map(member => {
    let line = new Array(maxLength - (member.name + member.age).length).fill('.');
    console.log(member.name + line.join('') + member.age);
})
祝你好运

  • @params:objArray[对象数组]
    lineSize[编号]每个输出行的长度

  • .map()
    每个对象

    • 获取名称值的长度

    • 获取分数转换为字符串后的长度

    • 从给定的
      lineSize

    • 填充一个与上一步差值相等的点数组,然后
      。将(“”)
      它们连接成一个字符串

    • 将每行返回为:
      obj.name。。。。对象得分
      到一个数组中

  • 创建a和a,并确保a应用于
    。单间距字体将使列表完全均匀

  • .forEach()
    上一个数组的字符串:

    • 创建一个
    • 将一行添加到
    • 附加到
    附加到documentFragment,然后将documentFragment附加到


  • 演示
    const分数=[{
    名字:“迈克”,
    分数:1
    }, {
    姓名:'莫妮克',
    分数:99
    }, {
    姓名:'马特',
    分数:5150
    }, {
    名字:“琳达”,
    分数:2112
    }];
    /*第一步*/
    常量成员列表=(对象数组,行大小)=>{
    /*步骤2*/
    让scoreArray=objArray.map(obj=>{
    让nameSize=obj['name'].length;
    让scoreSize=obj['score'].toString().length;
    小计=行大小-(名称+分数大小);
    让分隔符=`${Array(subTotal).fill('.').join(''')}`;
    返回`${obj.name}${delimiters}${obj.score}`;
    });
    /*步骤3*/
    const docFrag=document.createDocumentFragment();
    const list=document.createElement('ul');
    list.style.cssText=`font:400 3vw/1.5控制台;列表样式:无`
    /*步骤4*/
    scoreArray.forEach(行=>{
    const item=document.createElement('li');
    item.textContent=行;
    列表。追加子项(项目);
    });
    /*步骤5*/
    文件附件(列表);
    文件.正文.附件(docFrag);
    }
    
    成员名单(得分20分)基于@tdjprog方法,我写了这个

    const separateWords = (string1, string2, length = 40) => {
        const times = length - (string1 + string2).length;
        return string1 + " " + ".".repeat(times) + " " + string2;
    };
    

    希望它能帮助别人。干杯

    如果换一行呢?名称规格的最大长度是多少还不清楚。确定
    数量的逻辑是什么?谢谢你的澄清。这正是问题所在。。。我只需要将数字向右对齐,然后用…@看到我的了吗