1.节点的克隆

  • cloneNode,克隆一个节点,可添加参数,true为深克隆,不加或者传false为浅克隆
  • setattribute,给元素设置属性
  • getattribute,检索元素的属性

    1. // let box = document.getElementById('box');
    2. // let ss = box.cloneNode(true);
    3. // // 如果克隆的时候不穿参,或者传false就是浅克隆
    4. // // 如果克隆的时候穿参true,就是深克隆
    5. // console.log(ss);
    6. //---------------------------------------------------
    7. let box = document.getElementById('box'); // 获取的值是一个元素对象
    8. box.ss = 123456; // 这种是把属性增加到元素的堆内存中
    9. // console.log(box.ss); // 获取
    10. // console.dir(box)
    11. // setAttribute('属性名',value):设置属性
    12. // getAttribute('属性名'):获取属性
    13. // removeAttribute('属性名'):移除属性
    14. // 他们三个都是控制的行间属性
    15. box.setAttribute('sex', 456); // 放到当前元素的结构上了(行间)
    16. console.log(box.getAttribute('sex'));
    17. // 如果是用setAttribute设置的,就必须用getAttribute获取
    18. console.dir(box)
    19. box.removeAttribute('sex')
  • classList,检索元素的class集合 ```javascript // box.className = ‘f’ // 这是用f覆盖之前的类名

    1. console.log(box.classList); // ['a','b','c','d']
    2. // classList.add() // 在之前基础之上累加类名
    3. // classList.remove() // 移除指定的类名
    4. box.classList.add('f')
    5. box.classList.remove('a')
    6. // box.classList.replace('a', 'f') // 类名a被f替换,f会占用a的位置
    7. // box.classList.toggle('t') // 之前如果有此类名就是删除,如果没有就是新增
  1. <a name="zhf23"></a>
  2. ## 2.冒泡排序
  3. ```javascript
  4. let ary = [5,1,16,20,12,40];
  5. function ArySort(ary0){
  6. for (let index = 0; index < ary0.length; index++) {
  7. for(let i = 0;i<ary0.length-index;i++)
  8. {
  9. if(ary0[i]>ary0[i+1])
  10. {
  11. var temp = ary0[i];
  12. ary0[i] = ary0[i+1];
  13. ary0[i+1] = temp;
  14. }
  15. }
  16. }
  17. }
  18. ArySort(ary);
  19. console.log(ary);

3.用单引号或者双引号括起来的都是字符串

  • length,字符串的字符长度、
  • charAt通过指定的索引获取对应的字符串,如果获取不到就是空字符串
  • charCodeAt,获取指定索引的字符的ASCII码

    1. // let str = 'asdqwe';
    2. // console.log(str[0]); // 'a'
    3. // console.log(str.charAt(0)); // 'a'
    4. // console.log(str[100]); // un
    5. // console.log(str.charAt(100)); // ''
    6. // 2.charCodeAt():通过指定的索引获取对应字符串的ASCII码
    7. // let str = 'asdqwe';
    8. // console.log(str.charCodeAt(5)); // 101
  • substr(n,m):从索引n开始,截取m个字符;如果只传一个参数n,就直接截取到末尾

  • substring(n,m):从索引n开始,截取到索引为m的位置,不包含m对应的那一项。不支持负数

    1. // 3.substr(n,m):从索引n开始,截取m个,如果传一个参数n,那就是从索引n开始,截取到末尾
    2. // let str = 'asdqwe';
    3. // console.log(str.substr()); // 克隆源字符串
    4. // console.log(str.substr(0)); // 克隆源字符串
    5. // console.log(str.substr(2)); // 'dqwe'
    6. // console.log(str.substr(1,2)); // 'sd'
    7. //4.substring(n,m):从索引n开始,截取到索引m(不包含m对应的那一项)【不支持负数】
    8. // let str = 'asdqwe';
    9. // console.log(str.substring()); // 克隆源字符串
    10. // console.log(str.substring(0)); // 克隆源字符串
    11. // console.log(str.substring(2)); // 'dqwe'
    12. // console.log(str.substring(1, 2)); // 's'
    13. // 5.slice:和数组的slice还有substring用法一样【支持负数】
    14. let str = 'asdqwe';
    15. console.log(str.slice(-3, -1)); // 3 5 'qw'
    16. console.log(str.substring(-3, -1)); // 3 5 ''
    17. // 把负数加上当前的length,然后在进行计算
  • split,把字符串以特定的字符分割成数组 ```javascript // 6.split:把字符串以特定的分隔符转化为数组

    1. // let str = 'asd$ff$ghj$jkj';
    2. // console.log(str.split('$')); // ['asd','ff','ghj','jkj']
    3. // console.log(str.split()); // ["asd$ff$ghj$jkj"]
    4. // console.log(str.split('')); /// ["a", "s", "d", "$", "f", "f", "$", "g", "h", "j", "$", "j", "k", "j"]
    5. let str = 'asdasdasd';
    6. // 我想删除字符串里的所有的a字符
    7. // split和join
    8. // console.log(str.split('a').join(''));
    9. // str = str.split('a').join('');
    10. console.log(str); // 'sdsdsd'
  1. - replace(n.m):把字符串中的nm进行替换,但是只能替换第一个n
  2. ```javascript
  3. // let str = 'assffdsaaass';
  4. // replace默认只能替换第一个
  5. // console.log(str.replace('a', 'x')); // 'xssffdsaaass'
  6. // 全局进行替换(使用正则)
  7. // console.log(str.replace(/a/g, 'x')); // 'xssffdsxxxss'
  8. // let str = 'qwe';
  9. // str[3] = '4';
  10. // console.log(str);//'qwe'
  11. //给string封装方法
  12. String.prototype.replaceAll = function(sep){
  13. return this.replace(new RegExp(sep,'g'),'');
  14. }
  15. 'abacqda'.replaceAll('a')//"bcqd"
  • toLowerCase,将字符串中的大写字符转为小写;toUpperCase,将字符串中的大写字符转为小写
  • trim(),移除字符串中的空格,trimLeft移除左边的空格,trimRight移除右边的空格

    1. // let str = 'qwe';
    2. // str[3] = '4';
    3. // console.log(str);
    4. // 转大小写系列 8、9
    5. // let str = 'sasdrAD中国哇塞';
    6. // console.log(str.toLowerCase()); // 转小写 'sasdrad中国哇塞';
    7. // console.log(str.toUpperCase()); // 'SASDRAD中国哇塞'
    8. // 去空格系列
    9. // let str = ' as d ';
    10. // console.log(str.trim()); // 移除首尾的空格
    11. // trimLeft:移除左边空格 trimRight:移除右边空格
    12. // indexOf lastIndexOf includes concat //字符串也可以用