1. 留言板

留言板

使用maxlength=”100”限制字数

  • 样式

    1. * {
    2. padding: 0;
    3. margin: 0;
    4. box-sizing: border-box;
    5. }
    6. ul {
    7. list-style-type: none;
    8. }
    9. form {
    10. width: 80%;
    11. position: absolute;
    12. left: 10%;
    13. display: grid;
    14. flex-flow: row nowrap;
    15. justify-items: center;
    16. padding: 1.5em;
    17. }
    18. .info {
    19. width: 50em;
    20. height: 8em;
    21. }
    22. .btn {
    23. width: 60em;
    24. display: flex;
    25. justify-content: space-around;
    26. }
    27. .comment {
    28. width: 40em;
    29. place-items: start;
    30. padding: 1em;
    31. }
  • html

    1. <form action="">
    2. <textarea class="info" placeholder="发言不能超过100字" autofocus maxlength="100"></textarea>
    3. <div class="btn">
    4. <span class="notice">还可以输入100字</span>
    5. <button type="button">发表</button>
    6. </div>
    7. <ul class="comment">
    8. </ul>
    9. </form>
  • js

    1. const info = document.querySelector('.info');
    2. const btn = document.querySelector('form button');
    3. const ul = document.querySelector('.comment');
    4. const notice = document.querySelector('.notice');
    5. // 点击后留言
    6. btn.onclick = function () {
    7. let val = info.value.trim();
    8. let li = document.createElement('li');
    9. li.textContent = val;
    10. // 删除按钮
    11. let delBtn = document.createElement('button');
    12. delBtn.textContent = '删除';
    13. delBtn.style.float = 'right';
    14. // 点击删除
    15. delBtn.onclick = function () {
    16. if (confirm('是否删除?')) {
    17. this.parentNode.remove();
    18. info.focus();
    19. return false;
    20. }
    21. }
    22. if (val.length >0 && val.length <= 100) {
    23. // 删除按钮加在li尾部
    24. li.append(delBtn);
    25. // 留言加在ul头部
    26. ul.prepend(li);
    27. // 留言后输入框清空,焦点,提示信息初始
    28. // 输入框清空
    29. info.value = '';
    30. // 输入框焦点
    31. info.focus();
    32. // 提示信息初始
    33. notice.textContent = `还可以输入100字`;
    34. }
    35. }
    36. // oninput 监控输入, 提示信息
    37. info.oninput = function () {
    38. let lenth = info.value.trim().length;
    39. notice.textContent = `还可以输入${100 - lenth}字`;
    40. }

    2. 字符串的常用方法

    字符串的常用方法

  • concat() : 拼接

  1. const str = 'Hello';
  2. console.log(str.concat(' World')); // Hello World
  • substr(start, size) 从原字符串取出子字符串并返回,不改变原字符串
  1. const str = 'Hello';
  2. console.log(str.substr(1, 2)) // el
  • substring(start, end) 从原字符串取出子字符串并返回,不改变原字符串
  1. const str = 'Hello';
  2. console.log(str.substring(1, 2)) // e
  • replace() 用于替换匹配的子字符串,只替换第一个匹配,不改变原字符串
  1. const str = 'Hello';
  2. console.log(str.replace('l','M')) // HeMlo
  • split("") 把字符串拆分为数组
  1. const email = 'tp@qq.com';
  2. console.log(email.split('@')); // ['tp','qq.com']
  • slice(start, end) 从字符串中截取,不改变原字符串
  1. const email = 'tp@qq.com';
  2. let emailS = email.slice(3,);
  3. console.log(emailS); // qq.com
  • toLowerCase() 全部转小写
  1. const str = 'Hello';
  2. console.log(str.toLowerCase()) // hello
  • toUpperCase() 全部转大写
  1. const str = 'Hello';
  2. console.log(str.toUpperCase()) // HELLO

3. 数组的常用方法

数组的常用方法

  • concat() 拼接,返回由两个数组组合而成的新数组。
  1. arr = ['a','b','c','d'];
  2. console.log(arr.concat(['aa','bb'])); //[a,b,c,d,aa,bb]
  • push 数组尾部添加元素, 返回数组长度
  1. arr = ['a','b','c','d'];
  2. console.log(arr.push('e')); //5
  3. console.log(arr); //[a,b,c,d,e]
  • pop() 从数组尾部取出一个, 返回取出的元素
  1. arr = ['a','b','c','d'];
  2. console.log(arr.pop()); //d
  3. console.log(arr); //[a,b,c]
  • unshift 从数组头部添加元素
  1. arr = ['a','b','c','d'];
  2. console.log(arr.unshift('aa'));
  3. console.log(arr); //[aa,a,b,c,d]
  • shift 从数组头部取出一个元素
  1. arr = ['a','b','c','d'];
  2. console.log(arr.shift()); //5
  3. console.log(arr); //[b,c,d]
  • join() 将数组元素以指定字符拼接为字符串,返回一个字符串,原数组不变。默认连接符是逗号”,”
  1. arr = ['a','b','c','d'];
  2. console.log(arr.join()); //'a,b,c,d'
  • slice(start,end) 提取原数组的一部分,返回一个新数组,原数组不变。
  1. arr = ['a','b','c','d'];
  2. console.log(arr.slice(1,2)); //[b]
  3. console.log(arr);
  • splice(start,删除size,[arr2]) 数组的增删改
  1. // 增加
  2. a.splice(0,0,'aa');
  3. console.log(a)//[aa,a,b,c,d,e]
  4. // 删除
  5. a = ['a','b','c','d','e'];
  6. a.splice(0,1);
  7. console.log(a) //[a,b,c,d,e]
  8. // 修改
  9. a = ['a','b','c','d','e'];
  10. a.splice(0,1,'bb');
  11. console.log(a) //[aa,b,c,d,e]
  • reduce(ckfn,初始值:默认为0) 通过对数组中的所有元素调用定义的回调函数来累积单个结果
  1. arr = [1,2,3,4,5];
  2. console.log(arr.reduce((a,b)=>a+b,10));
  • filter() 对数组的每个元素调用定义的回调函数,并返回回调函数为其返回 true 的值的数组。
  1. arr = [1,2,3,4,5];
  2. console.log(arr.filter((ev)=>ev%2)); //取奇数

更多相关文章

  1. Numpy
  2. 第 84 天:NumPy 数学函数
  3. 第 83 天:NumPy 字符串操作
  4. 第 81 天:NumPy Ndarray 对象及数据类型
  5. js之留言板与数组字符串函数
  6. JavaScript:实例演示dom元素的增删改查操作
  7. 【JS基础入门】JavaScript基础之事件的操作详解及字符串数组常用
  8. 【js知识】splice()实现数组的添加、删除、替换
  9. 【uni-app/微信小程序】预览图片(单张、多张)uni.previewImage()

随机推荐

  1. Android 修改用户图像笔记
  2. Android Service使用方法--简单音乐播放
  3. Android数据的四种存储方式
  4. Android开源框架源码鉴赏:Fresco
  5. Android Studio 和 SDK 下载、安装和环境
  6. Android SDK:RelativeLayout - 按钮不会
  7. unity5发布android:在unity5里面的edit/p
  8. Android中ListPreference的使用
  9. Android入门二(五大布局)
  10. [置顶] Android增量更新与CMake构