1.Js基础

  • js组成部分

1.ECMAScript 2.DOM(document object model)3.BOM(browser object document)

(1)ECMA是(欧洲计算机制造商协会)它规定了js的语法标准。

(2)DOM是文档对象模型,规定了文档的显示结构,可以轻松地删除、添加和替换节点

(3)BOM是浏览器对象模型,就是浏览器自带的一些功能样式,如搜索框,设置,等学习浏览器窗口交互的对象

  • 定义变量名的规范:
  1. 由字母、数字、下划线、$组成;
  2. 变量名不能以数字开头 1num
  3. 遵循驼峰命名法; 第一个有意义的单词小写,以后任何一个有意义的单词大写,(语义化:方便维护)
  4. 不能以关键字保留字作为变量名;

     关键字:在JS中有特殊意义的单词;
     保留字:在未来有可能成为关键字的词
    
  5. 严格区分大小写
  • 数据类型

    基本数据类型和引用数据类型
    1.基本数据类型存储到栈内存中,引用存储到堆内存中;
    2.基本数据类型是操作值的,引用数据类型操作的是空间地址;
    基本: number string boolean null undefined symbol
    引用: 对象数据类型和函数数据类型
    对象数据类型: 对象 数组 正则 Math Date的实例…
    函数数据类型: 函数 、类

    console.log(isNaN(NaN));//true
    console.log(isNaN("aaa"));//true
    console.log(isNaN("1px"));//true
    console.log(isNaN(1));//false
    console.log(isNaN("1"));//false
    console.log(Number("22.22")) //22.22
    console.log(Number(null));//0   *******
    console.log(Number([]));//0
    console.log(Number(""));//0
    console.log(Number(true));//1
    console.log(Number(false));//0
    console.log(Number("1px"));//NaN
    console.log(Number({})); //NaN
    console.log(Number(undefined));//NaN

isNaN() 先转number类型,是有效数字–false

  • 数据类型比较的规律

    1.对象==对象,比较的空间地址;
    2.对象==字符串,对象默认调用toString方法,先转换成字符串,再比较
    3.对象==布尔, 对象先转换字符串,再转换数字;布尔直接转换数字;
    4.对象==数字; 对象先调用toString方法转成成字符串,然后再转number
    5.布尔==数字: 布尔转数字
    6.字符串==数字:字符串转数字
    7.布尔==字符串:布尔转数字,字符串转数字,然后比较
    8.null == undefined: true //null==null undefined==undefined 都是true
    9.unll.undefined 和其他数据类型比较都是false;

    原文作者:Tesla
    原文地址: https://segmentfault.com/a/1190000019307737
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞