• js里typeof和instanceof和箭头表达式要注意的地方,以及其他


    如果学过类似C#这样的语言,然后定义两个类class Mu{}和class Ku{},那么显然typeof Mu != typeof Ku的,但是在js里则不是这样,对于Mu和Ku的对象进行typeof后它们输出都是object,而对typeof Mu这个类名则输出function,即类名其实是一个函数类型,所以可以这样调用Mu(),也可以new Mu(),这个和es5倒是一致的;

    如果直接输出Mu则得到function Mu()这样一个字符串;

    综上,js的typeof不能很好的支持判断自定义类型(js里类型就只有固定的几种,String,Object,Symbol。。。);

    而instanceof则比较符合人的直觉,它能判断出对象是否是某个自定义类型的实例;

    如,虽然typeof mu === typeof ku,但是mu instanceof Ku则是返回false;

    箭头表达式里的this是指向window对象的,因此vue里写methods不要这么写,可以用aa: function() {}来写或者aa() {}来写,后者比箭头表达式还要简洁;

    js里一个对象不能拥有同名的属性和方法,后定义的会覆盖前面定义的,最后只剩下该名字的方法或者属性;

  • 相关阅读:
    面试相关
    luffy--01
    RESTful --01
    vue2 -- axios
    Vue --1
    crm--分页
    【SQL】UNION
    sql-新发现
    GROUPING
    记录的排列顺序——两个ORDER BY
  • 原文地址:https://www.cnblogs.com/silentdoer/p/11769181.html
Copyright © 2020-2023  润新知