博客
关于我
《JavaScript高级教程》学习笔记一、变量和数据类型
阅读量:851 次
发布时间:2019-03-17

本文共 1993 字,大约阅读时间需要 6 分钟。

JavaScript 变量与数据类型

在 JavaScript 开发过程中,变量和数据类型是开发人员最基础且频繁操作的概念之一。本文将深入探讨 JavaScript 中的变量及其数据类型特点。

1. 变量

JavaScript 是弱类型语言,其变量声明方式与其他编程语言有显著差异。变量可以通过 var 关键字声明,并且可以赋值为任意数据类型。值得注意的是,弱类型语言的优势在于灵活性,但也带来了一定的类型安全风险。

1.1 变量的声明与赋值

var 是 JavaScript 中用于声明变量的关键字。与强类型语言不同,var 不需要明确指定变量的类型。例如:

var msg = 'mdzz';  // String
var msg = 1024; // Number

此外,var 声明的变量在函数作用域内生效,而不是块作用域。

1.2 变量的默认值

如果变量未被初始化,则默认值为 undefined。可以通过如下方式显示指定:

var msg;  // msg 的值为 undefined
typeof(msg) >> "undefined"

此外,未声明的变量也会返回 undefined

2. 数据类型

JavaScript 共有 5 个基本数据类型,typeof 关键字可用于查看变量的数据类型。

2.1 Undefined

  • 只有一个值 undefined
  • 未初始化的变量或显示赋值 undefined 的变量默认值为 undefined
  • 示例:
    var msg; // msg 的值为 undefined
    typeof(msg) >> "undefined"

2.2 Null

  • 只有一个值 null
  • typeof(null) 返回 "object",需谨慎区分 null 和对象类型。

2.3 Boolean

  • 两个值:truefalse
  • 其他类型值可通过 Boolean() 转换为布尔值。转换规则如下:
    • String:非空字符串为 true,空字符串为 false
    • Number:非零数值为 true,0 和 NaNfalse
    • Object:任何对象为 truenullfalse
    • Undefinedundefinedfalse

2.4 Number

  • 可表示整数或浮点数。
  • 特殊值包括:
    • Number.MIN_VALUE(最小值)
    • Number.MAX_VALUE(最大值)
    • Infinity(正无穷)
    • -Infinity(负无穷)
    • NaN(非数值)

2.5 String

  • 用单引号 ' ' 或双引号 " " 包裹。
  • 转义字符包括 \n\t\b\r\\\'"
  • 字符串在 JavaScript 中是不可变的,拼接操作会生成新字符串。
  • toString() 方法返回字符串值(除 nullundefined 外)。

2.6 Object

  • JavaScript 对象的基础类型。
  • 每个对象实例都具有 constructorhasOwnPropertyisPrototypeOfpropertyIsEnumerabletoString()valueOf() 等方法。

3. 操作符

3.1 一元运算符

  • ++-- 递增、递减操作符。
  • +- 运算符对数字和其他类型值自动转换为数值。

3.2 位操作符

  • ~(按位非)
  • &(按位与)
  • |(按位或)
  • ^(按位异或)
  • <<>>>>>(移位操作符)

3.3 布尔操作符

  • !(逻辑非)
  • &&(逻辑与)
  • ||(逻辑或)

3.4 乘法、除法、加减法

  • 运算符对非数值操作数自动转换为数值。
  • 特殊情况:
    • Infinity 和非零数相乘返回 Infinity
    • Infinity0 相乘返回 NaN
    • NaN 与任何数运算返回 NaN

3.5 等式操作符

  • ==!=:先类型转换再比较。
  • ===!==:先类型转换再比较,并且值相等。

3.6 条件操作符

  • ? ::用于条件判断。

3.7 赋值操作符

  • =:用于赋值。

3.8 逗号操作符

  • ,:用于分隔表达式,返回最后一项值。

4. 语句

4.1 控制结构

  • ifdo-whilewhileforfor-inlabelbreakcontinuewithswitch

4.2 函数

  • 函数的基本语法:
    function functionName(parameters) {
    // 代码
    }
    functionName();
  • 函数参数可以与函数声明时的参数个数不同。
  • arguments 对象用于访问函数参数数组。

结语

通过以上内容可以看出,JavaScript 的灵活性和强大功能为开发者提供了极大的编程自由。理解和掌握这些基础知识是 JavaScript 编程的重要基础。

转载地址:http://jrsez.baihongyu.com/

你可能感兴趣的文章
MySQL InnoDB事务隔离级别与锁机制深入解析
查看>>
Mysql InnoDB存储引擎 —— 数据页
查看>>
Mysql InnoDB存储引擎中的checkpoint技术
查看>>
Mysql InnoDB存储引擎中缓冲池Buffer Pool、Redo Log、Bin Log、Undo Log、Channge Buffer
查看>>
MySQL InnoDB引擎的锁机制详解
查看>>
Mysql INNODB引擎行锁的3种算法 Record Lock Next-Key Lock Grap Lock
查看>>
mysql InnoDB数据存储引擎 的B+树索引原理
查看>>
mysql innodb通过使用mvcc来实现可重复读
查看>>
mysql insert update 同时执行_MySQL进阶三板斧(三)看清“触发器 (Trigger)”的真实面目...
查看>>
mysql interval显示条件值_MySQL INTERVAL关键字可以使用哪些不同的单位值?
查看>>
Mysql join原理
查看>>
MySQL Join算法与调优白皮书(二)
查看>>
Mysql order by与limit混用陷阱
查看>>
Mysql order by与limit混用陷阱
查看>>
mysql order by多个字段排序
查看>>
MySQL Order By实现原理分析和Filesort优化
查看>>
mysql problems
查看>>
mysql replace first,MySQL中处理各种重复的一些方法
查看>>
MySQL replace函数替换字符串语句的用法(mysql字符串替换)
查看>>
mysql replace用法
查看>>