• JS的组成和变量


    JavaScript中的变量和数据类型

    Js做客户端语言

    按照相关的Js语法,去操作页面中的元素,有时还要操作浏览器里面的一些功能

    Js由三部分组成:

    • ECMAScriptES):描述了该语言的语法和基本对象
    • DOMDocument Object Model):文档对象模型,描述处理网页内容的方法和接口,通过一些Js的属性和方法,用来操作页面中的DOM元素
    • BOMBrowser Object Model):浏览器对象模型,描述与浏览器进行交互的方法和接口,用来操作浏览器的。

    Js中的变量 Variable

    JS中数据分为两大类:一是基本数据类型:UndefinedNullBooleanNumberStringSymbol,二是复杂数据类型:Object,Object本质上是由一组无序的名子对组成的。

    变量:可变的量,在编程语言中,变量其实就是一个名字,用来存储和代表不同值的东西。

    // ES3
    var a = 123;
    // ES6
    let b = 100;
    b = 200 //报错
    const c = 1000;
    
    // 创建函数也相当于在创建变量
    function fn() {}
    
    // 创建类也相当于创建变量
    class A{}
    
    // ES6的模块岛屿也可以创建变量
    import a from './a.js'
    
    // Symbol创建唯一值
    let n = Symbol(100)
    let m = Symbol(100)
    
    

    总结:

    • var声明的变量,可以重复声明,后声明的会覆盖前面的
    • let声明的变量具有作用域,在同一作用域下不可重复声明变量,但是可以修改变量的值,例如let a = 1;,不能再次声明alet a = 2;会报错,提示:Uncaught SyntaxError: Identifier 'a' has already been declared
    • const声明的变量为常量,不能修改该变量的值,但是像Object这样的复杂数据类型,在内存中存放的是一个指向该对象的指针,也就是说,用const声明的对象仍然可以修改该对象的值,但不可再次声明该对象

    JS中的数据类型

    • 基本数据类型

      • 数字Number (常规数字和 NaN)

      • 字符串 String

      • 布尔值 Boolean

      • 空指针 Null

      • 未定义 Undefined

      • 唯一值(独一无二的值)Symbol

    • 引用数据类型 Object对象类型

      • {} 普通对象
      • [] 数组对象
      • RegExp 正则对象
      • Function 函数数据类型
      • Math 数学函数对象
      • Date 日期对象

    数据类型应用场景:

    当我们通过Ajax请求拿到数据之前,先在本地初始化数据,一般都会先给一个默认的数据,请求数据后再把数据放入到我们定义好的数据结构里面,比如:

    var data = {
    
        count: 0,
        isActive: true,
        goods: [],
        model: null,
        message: ''
      
    }
    
    

    验证数据类型 typeof操作符

    typeof操作符用于检测给定变量的数据类型。typeof操作符可以检测的数据类型有:

    • undefined
    • boolean
    • string
    • number
    • object
    • function
    var message = 'some string'
    console.log(typeof(message) // "string"
    
    var arr = [1,2,3,4]
    console.log(typeof(arr) // "object"
    console.log(typeof(null) // "object"
    
    

    在上面的例子中调用 typeof null会返回"object",因为特殊值null被认为是一个空的对象引用。用typeof检测一个变量是否是数组并不准确,会返回"object"

  • 相关阅读:
    关于git的简单使用
    手机设备上调试接口,查看错误信息
    用after伪类清除浮动
    js字母大小写转换方法
    使用淘宝 NPM 镜像
    JS判断类型
    JS判断客户端是手机还是PC的2个代码
    微信小程序 WebSocket
    服务器安全管理
    Linux下禁止ping最简单的方法
  • 原文地址:https://www.cnblogs.com/dobeco/p/11618487.html
Copyright © 2020-2023  润新知