博客
关于我
《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/

你可能感兴趣的文章
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MYSQL8.0以上忘记root密码
查看>>
Mysql8.0以上重置初始密码的方法
查看>>
mysql8.0新特性-自增变量的持久化
查看>>
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8修改密码的方法
查看>>
Mysql8在Centos上安装后忘记root密码如何重新设置
查看>>
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>
mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
查看>>
MYSQL:基础——3N范式的表结构设计
查看>>
MYSQL:基础——触发器
查看>>
Mysql:连接报错“closing inbound before receiving peer‘s close_notify”
查看>>