美文网首页
javascript 杂记

javascript 杂记

作者: 航白 | 来源:发表于2018-04-02 18:38 被阅读0次
  1. 数组杂记

1)数组的判断,使用Array.isArray()

var number = 1;
var arrays = [1, 2, 'number', null];

Array.isArray(number) // false
Array.isArray(arrays)    // true

2)一维数组的深拷贝

// for循环
function copy(arr1, arr2) {
    for (var i  = 0; i < arr1.length; i++) {
        arr2[i] = arr1[i]
     }
}

// slice
var arr1 = [1, 2, 3, 4];
var arr2 = arr1.slice(0);  // 为数组做个副本

// concat
var arr1 = [1, 2, 3, 4];
var arr2 = arr1.concat();

// 扩展运算符...
var arr1 = [1, 2, 3, 4];
var [ ...arr2 ]  = arr1;

3)多维数组的深拷贝

function deepCopy(array) {
    var copy = []
    for (var i = 0; i < array.length; i++) {
        if (array[i]  instanceof Array) {
            copy[i] = deepCopy(array[i])
         } else {
            copy = array[i]
         }
     }
     return copy;
}

4)数组去重

function distinct(array) {
    return [...new Set(array)]
}

var arr = [1, 1, 2, 3, 4, 4, 4];
distinct(arr) // [1, 2, 3, 4]

  1. 对象杂记

1)对象的深拷贝

// 扩展运算符...
var obj1 = {
    name: 'Tom',
    age: 10,
    gender: '男'
}
var { ...obj2 } = obj1;

相关文章

  • javascript杂记

    title: javascript杂记date: 2017-05-21 14:34:25tags: javascr...

  • javascript 杂记

    数组杂记 1)数组的判断,使用Array.isArray() 2)一维数组的深拷贝 3)多维数组的深拷贝 4)数组...

  • javascript杂记

    1 2 3 onblur 失去焦点onkeypress:某个键盘的键被按下或按住测试测试结果:keypress 键...

  • JavaScript杂记(3)

    1 对象 (无序的数据集) 由若干个“键值对”(key-value)构成。 var a={name:xxx}...

  • 2018-12-01

    练车杂记

  • 《JavaScript高级程序设计》__杂记

    文档对象模型DOM提供访问和操作页面内容的方法和接口 浏览器对象模型BOM提供与浏览器交互的方法和接口 ECMAS...

  • javascript工作零散杂记

    概述 javascript 操作 整理的乱七八糟 1.快速创建数据let arr3 = new Array(5)....

  • 学琴杂记

    学琴杂记 一 很小...

  • 散·杂·笔

    本人的记录分为散记、杂记、笔记。 散记,不分类,随心随记。杂记,分类,记录若干范畴的心得,比如物理。笔记,分类,记...

  • 杂记

    绕园一匝,回家敷面膜。 #杂记#

网友评论

      本文标题:javascript 杂记

      本文链接:https://www.haomeiwen.com/subject/kfixhftx.html