- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
词法结构
Js是用Unicode字符集编写的;js区分大小写,而html不区分;直接量;标志符合保留字;分号可选,注意良好的编程习惯。
第二章 类型、值和变量
1.数字
Js不区分整数值和浮点数值,所有值都用浮点数值表示。
整型直接量有十六进制(ox或Ox前缀),八进制(0开始,可能不支持),还有十进制。
Infinity :无穷大
-Infinity :负无穷大
NaN != NaN(返回true)
0 === -0
Js采用一种二进制表示法,不能精确到类似0.1这样的数字,应避免小数,使用大整数,如10分而非0.1元
2.文本
字符串直接量
转义字符: \.....
字符串: js中字符串是固定不变的,使用方法后都返回新字符串,字符串本身不改变。
3.布尔值
任意字符串都可以转换为布尔值,如下列都转换为false
undefined
null
0
-0
NaN
“”
布尔值包含toString()方法
4.null和undefined
typeof(null) //返回object,可以认为null是一个特殊的对象值,即“非对象”。
typeof(undefined) //返回undefine,表明这个值是这个类型的唯一成员。
两者都不包含任何属性和方法。
5.全局对象
比如Math和JSON,全局对象的属性是全局定义的符号,js程序可以直接使用。
在代码最顶级this可以直接引用全局对象Js对象是属性或已命名值得集合,通过(.)引用属性值,属性值是函数时,称其为方法。
存取字符串、数字、布尔值的属性时创建的临时对象,它只是偶尔用来区分原始类型和对象,即它们三者并不是对象,但表现出有属性。
可通过String(),Number()或Boollen()显式创建包装对象:
var s = new String();
== 视原始值和包装对象相等, === 不等。
7.原始值(undefined、null、布尔值、数字和字符串)是不可改变的,修改字符串实际上返回了一个新的字符串,原字符串并不改变。原始值的比较是值的比较,只有它们的值相等时才相等。
对象是可变的,值可以修改,但对象的比较并不是值的比较,而是引用的比较,当且它们引用同一个基对象才相等。
8.类型转换
(1)== 符号会偏向把两边数据类型转换为数字进行比较。且其从不试图将其操作数转换为布尔值。
(2)显式类型转换:
Number() // 等价于 x+’’
parseInt() // 只解析整数,可接受第二个参数:parseInt(“11”,2) 结果为3(1*2+1)
parseFloat() // 可解析整数和浮点数。
Boolean() // 等价于 +x ,一元运算符
String() // 等价于 !!x ,一元“!”运算符对操作数转换为布尔值并取反。
Object()
方法(都是转换为字符串):
toString() // 转换为字符串,()中可以接受转换基数
toFixed() // 根据小数点后的指定位数将数字转换为字符串,不使用指数记数。
toExponential() // 参数指定小数点后面位数,且小数点前只有一位,可使用指数记数。
toPrecision() // 参数指定有效位数,有效数字小于数字整数部分数用指数形式。
(3)对象转换为原始值
toString()
valueOf() // 返回对象本身
9.变量声明
Js是动态语言类型,声明变量时不用指明类型。
10.变量作用域
在函数体内,局部变量的优先级高于同名的全局变量。声明局部变量时必须使用var语句,不然会生成全局变量。
Js中没有块级作用域,取而代之的是函数作用域:变量在声明它们的函数体以及这个函数体嵌套的任意函数体内都是有定义的。即函数内的变量声明“提前”至函数体顶部,同时变量初始化留在原来的位置。
Js全局变量是全局变量的属性,用var声明的变量是不可配置的,无法用delete删除
未声明的变量可配置。
作用域链
表达式和运算符
1.原始表达式
如:1.123 “hello” /pattern/
2.对象和数组的初始化表达式
如var squre = function(x){ return x*x;}
4.属性访问表达式
两种访问方式:
var o = {x:1,y:{z:3}};
o.x;
o[“x
您可能关注的文档
最近下载
- T_CEPPC 23—2024(发电企业数据分类分级方法).pdf
- 新解读《GB 10493-2018铁路站内道口信号设备技术条件》.docx VIP
- 国有企业采购管理规范 T/CFLP 0027-2020.pdf VIP
- 基孔肯雅热科普核心信息课件.pptx VIP
- 15MR201 城市道路-沥青路面 .docx VIP
- ISO17025:2017实验室方法验证和方法确认工作指引.doc VIP
- 2025年gsp各岗位培训试题及答案.docx VIP
- 清洁剂职业危害告知卡.doc
- 串联质谱技术新生儿遗传代谢病筛查讲义.ppt
- 2025年陕西、山西、青海、宁夏高考物理试卷真题(含答案解析).docx
文档评论(0)