关于 JS -基本用法

JS 基本用法

  1. typeof
    返回变量类型
    var a = 33
    console.log(typeof a) // number

  2. instanceof A instanceof B 检测B.prototype是否存在于A的原型链上。
    判断一个对象是不是另外一个对象的实例
    简单用法:
    function Person(){};
    var p =new Person();
    console.log(p instanceof Person);//true
    复杂用法:
    function Person() {}
    console.log(Object instanceof Object); // true
    //第一个Object的原型链:Object=>
    //Object.proto => Function.prototype=>Function.prototype.proto=>Object.prototype
    //第二个Object的原型:Object=> Object.prototype

  3. 字符串方法:
    1.查找字符串中的字符串
    indexOf()
    lastIndexOf()
    search() //方法返回字符串中指定文本第一次出现的位置
    2. 截取字符串长度
    slice(start, end)
    substring(start, end)
    substr(start, length)
    3. replace() 替换
    4. 大小写
    toLowerCase()
    toUpperCase() // 使用正则表达式 /i(大小写不敏感)
    5. 链接字符串
    concat()
    6. 首尾去空格
    trim()
    7. 提取字符串字符
    charAt(position)
    var str = "HELLO WORLD";
    str.charAt(0); // 返回 H
    charCodeAt(position)
    // 方法返回字符串中指定索引的字符 unicode 编码:
    8. 把字符串转换为数组
    split()
    var str = "Hello";
    var arr = str.split(""); // ["H", "e", "l", "l", "o"]

  4. 数组方法

    1. 判断是否为数组
    1. Array.isArray(Arr1)
    2. Arr1 instanceof Array
    3. 假如对象原型包含单词 "Array" 则返回 true。
    function isArray(x) {
    return x.constructor.toString().indexOf("Array") > -1;
    }
    2.数组转字符串
    2.1 toString()
    2.2 join()
    3. 新增 删除数组
    新增:
    3.1 Push() 末尾增加
    3.2 unshift() 开头增加
    删除:
    3.1 pop() 末尾删除
    3.2 shift() 开头删除
    4. 拼接数组
    splice()
    splice(1,1,'demo') // 从索引为1,删除1个,新增一个demo
    5. 裁剪数组
    slice()
    slice(2,3) 从索引2开始,裁到索引3 不包括索引3(只裁剪索引2)
    6. 排序
    sort()
    A.sort(function(a,b)=>{
    return a - b // 升序
    return b - a // 降序
    return a.year-b.year // 数组里对象一样使用
    })
    7. 翻转数组
    reverse()
    8. forEach()
    map()
    filter()
    reduce()
    every() // 检查所有数组值是否通过测试 一个没有就是false
    some() //返回通过测试函数的第一个数组元素的值,有一个正确就是true
    find() //返回通过测试函数的第一个数组元素的值
    indexOf() // 查到就是索引没有查到返回-1
    includes() // 字符串 数组都可以用 包含返回true 不包含false
    求和
    let arr = [1,2,3,4,5]
    let result = arr.reduce((prev,cur)=>{
    return prev+cur
    })
    console.log(result)
    简单去重
    let arr = [1,2,3,4,5,2,3]
    let result = arr.reduce((prev,cur)=>{
    if (!prev.includes(cur)){
    prev.push(cur)
    }
    return prev
    },[])
    console.log(result)

  5. bind call apply

    var name = '盖伦'
    var age = 18
    var obj = {
    name: "寒冰",
    age: 20,
    objAge: this.age,
    myFun: function (f, t) {
    console.log(f,t);
    return console.log(this.name + this.age + f + t);
    }
    }
    var demo = {
    name: 'jack',
    age: 200
    }
    console.log(obj.myFun.call(demo, '美国', 'porsche'));
    // console.log(obj.objAge); // 18
    // console.log(obj.myFun()); // 寒冰20

    1. call(this的指定对象,参数1,参数2)
    2. apply(this的指定对象,[参数1,参数2])
    3. bind(this的指定对象,参数1,参数2)()
    3. bind(this的指定对象,[参数1,参数2])()

posted @ 2020-05-28 18:28  Howar丶张  阅读(180)  评论(0)    收藏  举报