web前端入门到实战:JS的组成、变量、数据类型

Js做客户端语言

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

成都创新互联公司长期为上千多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为大庆企业提供专业的做网站、成都网站制作大庆网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。

Js由三部分组成:

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

Js中的变量 Variable

JS中数据分为两大类:一是基本数据类型:Undefined、Null、Boolean、Number、String、Symbol,二是复杂数据类型: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;,不能再次声明a,let 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: ''
}
web前端开发学习Q-q-u-n: 784783012 ,分享学习的方法和需要注意的小细节,不停更新最新的教程和学习方法
(从零基础开始到前端项目实战教程,学习工具,职业规划)

验证数据类型 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"


网页名称:web前端入门到实战:JS的组成、变量、数据类型
文章起源:http://ybzwz.com/article/jgshce.html