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

你可能感兴趣的文章
Netty简介
查看>>
Netty速成:基础+入门+中级+高级+源码架构+行业应用
查看>>
Netty遇到TCP发送缓冲区满了 写半包操作该如何处理
查看>>
Netty:ChannelPipeline和ChannelHandler为什么会鬼混在一起?
查看>>
Netty:原理架构解析
查看>>
Network Dissection:Quantifying Interpretability of Deep Visual Representations(深层视觉表征的量化解释)
查看>>
Network Sniffer and Connection Analyzer
查看>>
Network 灰鸽宝典【目录】
查看>>
NetworkX系列教程(11)-graph和其他数据格式转换
查看>>
Networkx读取军械调查-ITN综合传输网络?/读取GML文件
查看>>
network小学习
查看>>
Netwox网络工具使用详解
查看>>
Net与Flex入门
查看>>
net包之IPConn
查看>>
Net操作配置文件(Web.config|App.config)通用类
查看>>
Neutron系列 : Neutron OVS OpenFlow 流表 和 L2 Population(7)
查看>>
New Relic——手机应用app开发达人的福利立即就到啦!
查看>>
NFinal学习笔记 02—NFinalBuild
查看>>
NFS
查看>>
NFS Server及Client配置与挂载详解
查看>>