2022-05-25 牛客网前端JS题目和相关知识拓展汇总(一)

一.对li中的内容排序后重新渲染
1.要求

场景描述:在一个 HTML 页面中,有一个无序列表(ul),
其中包含了一些项目(li)。每个项目都有一个文本内容和一个唯一的 ID。
你需要编写一个 JavaScript 函数来提取列表中所有项目的文本内容,并将它们按照 ID 进行排序,
然后将排序后的文本内容重新渲染回去。

2. 代码
//html
  <ul id="myList">
    <li id="item1">项目 1</li>
    <li id="item3">项目 3</li>
    <li id="item2">项目 2</li>
    <li id="item4">项目 4</li>
  </ul>

//js
    function sortAndReturnTextContent() {
      const items = document.getElementById('myList').children;
      // 在此补全代码
      // 1.分别提取ID数组和文本内容数组
      var arrId=[],arrText=[]
      for(let i in items){
        arrId.push(items[i].id);
        arrText.push(items[i].innerHTML)
      }
      // 2.简单排序
      arrId.sort();
      arrText.sort();
      // 3.将排序后的ID数组和文本内容数组重新赋回去
      for(let i in items){
        items[i].id=arrId[i],
        items[i].innerHTML=arrText[i];
      }
    }
    sortAndReturnTextContent()
3.效果

在这里插入图片描述

二.渲染出直角三角形
  var ul=document.querySelector("ul");
  var str="";
  for(var i=1;i<=3;i++){//i=1,2,3,三行
    for(var j=0;j<i;j++){//j==>0,0~1,0~2,每行数量分别为1,2,3
      str+="*"
    }
    str+=`<br/>`
  }
  ul.innerHTML=str;
三.以字符串形式返回文件名的拓展名
// 返回".js"或者".vue"
const _getExFilename = (filename) => {
    // 补全代码
    let arr=filename.split(".");//[index,html]
    let name=arr[arr.length-1];//html
    return "."+name;//.html
    
}
console.log(_getExFilename("index.html"));
四.给数字参数添加千分位分隔符后返回
1.要求

示例

输入:_comma(12300)
输出:'12,300'
2.代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端OnTheRun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值