【JavaScript】类型、值和变量

el/2024/5/23 1:09:25
  • JavaScript中非常重要的数据类型是对象和数组。
  • JavaScript标识符必须以字母、下划线(_)或美元符($)开始,后续字符可以是字母、数字、下划线或美元符。
  • JavaScript变量是无类型的(untyped),变量可以被赋予任何类型的值,同样一个变量也可以重新赋予不同类型的值。使用var关键字来声明变量。

数字

  • JavaScript不区分整数值和浮点数值,所有的数字均用浮点数表示。当一个数字直接出现在JavaScript程序中,我们称之为数字直接量(numeric literal)。
  • JavaScript中的算术运算在溢出、下溢或被零整除时不会报错。
  • JavaScript预定义了全局变量Infinity和NaN,用来表示正无穷大和非数字值。
  • 非数字值有一点特殊,它和任何值都不相等,包括自身。因此没办法比较x==NaN来判断变量x是否是NaN,应当用x != x来判断,当且仅当x为NaN的时候,表达式的结果才为true。

文本

  • JavaScript中没有表示单个字符的“字符型“。
  • JavaScript中的字符串直接量,是由单引号或双引号括起来的字符序列。由单引号定界的字符串中可以包含双引号,由双引号定界的字符串中也可以包含单引号。
模式匹配(没搞清楚)

布尔值

  • undefined、null、0、-0、NaN、“”这六个JavaScript值会被转换成false。
  • 布尔值包含toString()方法,可以使用这个方法将字符串转换为true或false。

null和undefined

  • 两者都表示“值的空缺”,判断相等的运算符“==”认为两者是相等的,要使用严格相等运算符“===”来区分它们。

全局对象

  • 全局对象的属性是全局定义的符号,JavaScript程序可以直接使用。当JavaScript解释器启动时(或者任何Web浏览器加载新页面的时候),它将创建一个新的全局对象,并给它一组定义的初始属性。
  • 全局属性:undefined、Infinity、NaN
  • 全局函数:isNaN()、parseInt()、eval()
  • 构造函数:Date()、RegExp()、String()、Object()、Array()
  • 全局对象:Math、JSON

JavaScript中的原始值(undefined、null、布尔值、数字、字符串)是不可更改的,而对象是可以更改的。

  • 对象的比较并非值的比较。我们将对象称为引用类型,因此对象值都是引用,对象的比较均是引用的比较:当且仅当它们引用同一个基对象时,它们才相等。
  • 当直接将对象或数组赋值给一个变量的时候,仅仅是对赋值的引用,对象本身并没有复制一次。如果想要得到一个对象或数组的副本,必须显式复制对象的每个属性或数组的每个元素。
  • 同样地,想要比较两个单独的对象或者数组,则必须比较它们的属性或元素。

http://www.ngui.cc/el/4893669.html

相关文章

【JavaScript】表达式和运算符

表达式 原始表达式 原始表达式是表达式的最小单位,它们不再包含其他表达式。 数字直接量字符串直接量正则表达式直接量一些保留字变量 对象和数组的初始化表达式 对象和数组的初始化表达式实际上是一个新创建的对象和数组。 数组初始化表达式是通过一对方括号…

从一个例子分析gorilla/mux源码

最近终于闲下来,有时间阅读gorilla/mux。这个是我们在用Golang搭建Web服务器的时候经常用到的库,因此非常重要。这里是我阅读源码和参考了别人的博客之后得到一些总结。 使用的例子 我们从下面这个简单的代码开始追踪分析。 package mainimport ( "github.com/gorill…

原型设计 - 你好Axure

Axure Axure RP是美国Axure Software Solution公司旗舰产品,是一个专业的快速原型设计工具。学会使用Axure几乎是每个产品人的必备技能。 学习Axure之前,我们需要了解几个名词: 低保真原型:低保真原型一般是一个能简单交互的线…

java学习感触

今天的今天、、 java社区看到一片帖子: 就是那种已经决心往某个领域发展然后一直在苦学但是一直感觉不能深入核心一直在弄些皮毛然后找不到人指导的痛苦 迷茫无助累思维停滞不知道该怎么学呢有劲没处使 我现在电脑上什么游戏都没呢,全删呢,每…

mssql学习笔记【1】

使用smalldatatime类型数据 将显示: 年-月-日 时:分:秒 use sselect * from test *号表示查每个元组的所有列 select count (*) number from test where sdept like计算机 查计算机系学生人数,count()计数函数…

开帖

印个脚印、、 未来在等我、、 两个月后的今天独立搭建起SSH框架、、 奋斗奋斗~~

中国最美的7个小镇

1.中国最美的地方——乌镇 地理位置:地处浙江桐乡市北端,西临湖州市,北界江苏吴江县。 必去理由:这个小家碧玉般静谧的江南小镇,没有周庄的名气,只有宁静、安详和让人感动的沧桑。白墙、青瓦、木隔扇、石板…

Hibernate入门2

*瞬时对象(Transient Objects):使用new 操作符初始化的对象不是立刻就持久的。它们的状态是瞬时的,也就是说它们没有任何跟数据库表相关联的行为,只要应用不再引用这些对象(不再被任何其它对象所引用),它们…

Hibernate入门3_基本标签映射

dtd:约束xml标签名字 <hibernate-mapping auto-import"true|false" //hql的实体类是否自动导入&#xff0c;默认自动导入 package"package.name" //全局的包 /> <class name"ClassName" pojo类名 table"tableName&qu…

Hibernate入门4_多对一关联映射

*关联映射&#xff1a;多对一:many-to-one:用户要持有组的引用 一对多:one-to-many 一对一:ont-to-one 多对多:many-to-many hibernate多对一关联映射: *关联映射的本质:将关联关系映射到数据库&#xff0c;所谓的关联关系是对象模型在内存中的一个或多个引用. *<many-t…