前端练手小项目「表单」「JS」「04」

学长仓库里的项目,做一遍的目的是做JS练习&&找到常用JS函数

效果图: 

源码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>数组联系</title>
</head>
<style>
     /* <style> */
        .billSu-header {
            background-color: rgb(21, 21, 21);
            text-align: center;
            padding: 10px;
            color: #dde666;
            font-size: 20px;
            font-weight: 100;
        }
        .billSu-header span{
            margin: 0 5px;
        }
        .billSu-header a{
            text-decoration: none;
            color: unset;
        }
    </style>
</style>
<body>
    <div class="billSu-header">
        <span><a href="https://github.com/wesbos/JavaScript30" target="_blank">JavaScript30 灵感来源</a></span>
        <span>|</span>
        <span><a href="https://github.com/FangzhouSu/JS-30Demos" target="_blank">本项目仓库-billSU</a></span>
        <span>|</span>
        <span><a href="https://blog.csdn.net/qq_45704942?spm=1010.2135.3001.5421&type=blog" target="_blank">了解我</a></span>
    </div>
    <br>
    <!-- 表单就是一个表,用了自然井然有序 -->
    <table class="inventors">
    <caption>发明家们的信息</caption>
        <thead>
            <tr>
                <th>Number</th>
                <th>First name</th>
                <th>Last name</th>
                <th>Date of Birth</th>
                <th>Date of Death</th>
            </tr>
        </thead>

        <tbody>
            <tr>
                <td>1</td>
                <td>Albert</td>
                <td>Einstein</td>
                <td>1879</td>
                <td>1955</td>
            </tr>
            <tr>
                <td>2</td>
                <td>Isaac</td>
                <td>Einstein</td>
                <td>1643</td>
                <td>1727</td>
            </tr>
            <tr>
                <td>3</td>
                <td>Galileo</td>
                <td>Galilei</td>
                <td>1564</td>
                <td>1642</td>
            </tr>
            <tr>
                <td>4</td>
                <td>Marie</td>
                <td>Curie</td>
                <td>1867</td>
                <td>1934</td>
            </tr>
            <tr>
                <td>5</td>
                <td>Johannes</td>
                <td>Kepler</td>
                <td>1571</td>
                <td>1630</td>
            </tr>
            <tr>
                <td>6</td>
                <td>Nicolaus</td>
                <td>Copernicus</td>
                <td>1473</td>
                <td>1543</td>
            </tr>
            <tr>
                <td>7</td>
                <td>Max</td>
                <td>Planck</td>
                <td>1858</td>
                <td>1947</td>
            </tr>
            <tr>
                <td>8</td>
                <td>Katherine</td>
                <td>Blodgett</td>
                <td>1898</td>
                <td>1979</td>
            </tr>
            <tr>
                <td>9</td>
                <td>Ada</td>
                <td>Lovelace</td>
                <td>1815</td>
                <td>1852</td>
            </tr>
            <tr>
                <td>10</td>
                <td>Sarah E.</td>
                <td>Goode</td>
                <td>1855</td>
                <td>1905</td>
            </tr>
            <tr>
                <td>11</td>
                <td>Lisa</td>
                <td>Meitner</td>
                <td>1878</td>
                <td>1968</td>
            </tr>
            <tr>
                <td>12</td>
                <td>Hanna</td>
                <td>Hammarström</td>
                <td>1829</td>
                <td>1909</td>
            </tr>

        </tbody>
    </table>
        <h2>1.筛选出于1500-1599年间出生的发明家</h2>
    <div id="demo1"><em>打开控制台 看输出的表格!</em> 😊</div>
    <h2>2.将发明家们的fisrtName和lastName组合成一个阵列</h2>
    <div id="demo2"></div>
    <h2>3.依据生日由大到小排列所有的发明家</h2>
    <div id="demo3"><em>打开控制台 看输出的表格!</em> 😊</div>
    <h2>4.将所有发明家的在世时间求和</h2>
    <div id="demo4"></div>
    <h2>5.依据年龄由大到小排列所有的发明家</h2>
    <div id="demo5"><em>打开控制台 看输出!</em> 😊</div>
    <h2>6.列出维基百科中巴黎所有包含'de'的路名</h2>
    <h3>(在wiki中通过querySelectorAll来选取资料做筛选)</h3>
    <div id="demo6">有墙打不开 & 那个获取的方法我没老看懂的</div>
    <h2>7.依据lastName排序所有“people”的资料 按照字母表的顺序 从前往后~(大写在小写前面哦)</h2>
    <div id="demo7"><em>打开控制台 看输出!</em> 😊</div>
    <h2>8.分别计算给出的data数组内每个种类的数量 返回一个对象</h2>
    <div id="demo8"><em>打开控制台 看输出!</em> 😊</div>
<script>
    const inventors = [
      { first: 'Albert', last: 'Einstein', year: 1879, passed: 1955 },
      { first: 'Isaac', last: 'Newton', year: 1643, passed: 1727 },
      { first: 'Galileo', last: 'Galilei', year: 1564, passed: 1642 },
      { first: 'Marie', last: 'Curie', year: 1867, passed: 1934 },
      { first: 'Johannes', last: 'Kepler', year: 1571, passed: 1630 },
      { first: 'Nicolaus', last: 'Copernicus', year: 1473, passed: 1543 },
      { first: 'Max', last: 'Planck', year: 1858, passed: 1947 },
      { first: 'Katherine', last: 'Blodgett', year: 1898, passed: 1979 },
      { first: 'Ada', last: 'Lovelace', year: 1815, passed: 1852 },
      { first: 'Sarah E.', last: 'Goode', year: 1855, passed: 1905 },
      { first: 'Lise', last: 'Meitner', year: 1878, passed: 1968 },
      { first: 'Hanna', last: 'Hammarström', year: 1829, passed: 1909 }
    ];

    const people = ['AA姓-lastname,名-firstname - 虽然感觉有点怪 但就是这样','aaaa,aaaa瞧不起我小写字母是吧', 'Zzzz,zzzz甚至我都比你靠前 谁叫你是小写字母','Beck, Glenn', 'Becker, Carl', 'Beckett, Samuel', 'Beddoes, Mick', 'Beecher, Henry', 'Beethoven, Ludwig', 'Begin, Menachem', 'Belloc, Hilaire', 'Bellow, Saul', 'Benchley, Robert', 'Benenson, Peter', 'Ben-Gurion, David', 'Benjamin, Walter', 'Benn, Tony', 'Bennington, Chester', 'Benson, Leana', 'Bent, Silas', 'Bentsen, Lloyd', 'Berger, Ric', 'Bergman, Ingmar', 'Berio, Luciano', 'Berle, Milton', 'Berlin, Irving', 'Berne, Eric', 'Bernhard, Sandra', 'Berra, Yogi', 'Berry, Halle', 'Berry, Wendell', 'Bethea, Erin', 'Bevan, Aneurin', 'Bevel, Ken', 'Biden, Joseph', 'Bierce, Ambrose', 'Biko, Steve', 'Billings, Josh', 'Biondo, Frank', 'Birrell, Augustine', 'Black, Elk', 'Blair, Robert', 'Blair, Tony', 'Blake, William'];
    //filter用来比较范围
    // 搞1500-1600之间的人
    const fifteen = inventors.filter(inventor => (inventor.year >= 1500 && inventor.year < 1600))
    console.table(fifteen)
    // 正则表达式和map
    const fullNames = inventors.map(inventor =>`${inventor.first}-${inventor.last}<br/>`)
// sort一开始是按照转换为的字符串的诸个字符的Unicode位点进行排序。例如 "Banana" 会被排列到 "cherry" 之前。
// 比较第一个字母
// 以下的这种比较方式就是比较数字「还可以做减法」
    const ordered = inventors.sort((a,b)=>{
        return a.year > b.year ? 1 : -1;
    })
    console.table(ordered);

    const totalYears = inventors.reduce((total,cur_inventor) => {
        return total + (cur_inventor.passed - cur_inventor.year);
    },0)
    console.log(totalYears);
    document.getElementById('demo4').innerHTML = totalYears;
// 年纪,从大到小
    const unordered = inventors.sort((a,b) => {
        let lastInventor = a.passed - a.year;
        let nextInventor = b.passed - b.year;
        return nextInventor - lastInventor;
    })
    console.table(unordered)
// 字符串==》变成数组,然后取出数组的某一位
    const alpha = people.sort((a,b)=>{
        const [alastName,afirstName] = a.split(",");
        const [blastName,bfirstName] = b.split(",");
        return alastName > blastName ? 1 : -1;
    })
    console.log(alpha);

    const data = ['car', 'car', 'truck', 'truck', 'bike', 'walk', 'car', 'van', 'bike', 'walk', 'car', 'van', 'car', 'truck' ];

    const transportation = data.reduce(function(obj,item){
        if(!obj[item]){
            obj[item] = 0;
        }
        obj[item]++;
        return obj;
    },{});
    console.log(transportation);

</script>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "31个前端入门练手项目合集,源码,2022年最新.zip" 是一个前端入门练手项目的合集压缩文件。这个文件包含了 31 个用于练习前端开发的项目,每个项目都有对应的源代码。整个压缩文件是 2022 年的最新版本。 这个合集是为了帮助前端初学者提供实践机会而设计的。通过参与练手项目,学习者可以巩固已学知识,加深对前端开发的理解,并提升自己在实践中的能力。这些项目涵盖了前端开发中的各个方面,包括 HTML、CSS、JavaScript前端框架和库等。 这个合集的源码是学习和研究的重要资源。学习者可以通过阅读和理解源代码,了解项目的实现细节和逻辑。同时,他们也可以通过修改和扩展源代码来进行个性化的练习,锻炼自己的创造力和问题解决能力。 对于前端初学者来说,这个合集是一个宝贵的资源。在学习的过程中,他们可以根据自身的兴趣和能力,选择合适的项目进行练习。每个项目都有对应的源码,学习者可以根据需要参考和学习。此外,这个合集还可以作为一个参考库,供学习者在日后的实践中查阅和借鉴。 总而言之,"31个前端入门练手项目合集,源码,2022年最新.zip" 是一个为前端初学者设计的资源文件。通过参与这些项目并研究源代码,学习者可以提高自己的前端开发能力,并在实践中不断成长。 ### 回答2: 这个压缩包是一个包含了31个前端入门练手项目的合集,其中包含了每个项目的源码。这些项目都是为了帮助初学者踏入前端开发领域而设计的。 每个项目都有独立的文件夹,文件夹中包含了该项目的所有必要文件,如HTML、CSS和JavaScript。这些项目涵盖了前端开发中的各个方面,包括基本的静态网页布局、响应式设计、DOM操作、动画效果、表单验证等等。 这个合集的目的是为了让初学者有机会练习和应用他们学到的前端知识。通过完成这些项目,他们可以巩固他们的基础,提高他们的实践能力,并学习如何将前端知识应用到实际项目中。 这个合集的源码是开放的,意味着你可以查看每个项目的源代码,并从中学习和借鉴。你可以通过阅读源码来理解每个项目的实现原理,学习如何使用HTML、CSS和JavaScript创建交互式的网页。 这个合集是2022年最新的,它涵盖了最新的前端开发技术和趋势。通过完成这些项目,你可以保持对前端发展的敏感度,并学习和应用最新的前端技术。 总之,这个前端入门练手项目合集是一个很好的资源,提供了多个实践项目和源码,适合初学者学习和练习前端开发。无论是想系统学习前端知识,还是想提高实践能力,这个合集都是一个很好的选择。 ### 回答3: 31个前端入门练手项目合集.zip是一个包含了31个前端入门练手项目的压缩文件。这些练手项目的源码都是最新的,适用于2022年。 这个合集对于前端入门学习者来说非常有用。通过完成这些项目,学习者可以熟悉并运用HTML、CSS和JavaScript前端开发的基础知识。这些项目的难度适中,适合初学者逐步掌握前端开发的技能。 这个合集中的每个项目都有对应的源码文件,学习者可以查看和修改这些源码来理解和学习代码的编写。源码中会有详细的注释和说明,帮助学习者更好地理解代码的功能和逻辑。 这个合集中的31个项目涵盖了常见的前端开发场景,包括静态网页、响应式布局、表单验证、轮播图、计算器等等。通过完成这些项目,学习者可以锻炼自己的前端开发能力,提升对各种常见前端组件和功能的理解和运用能力。 总的来说,31个前端入门练手项目合集.zip是一个非常实用的资源,帮助前端入门学习者从理论知识向实际项目开发过渡。通过实际动手完成这些项目,学习者可以更好地巩固前端开发的基础知识,并培养自己的编程思维和解决问题的能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值