一.JavaScript
JavaScript是一种客户端脚本语言,最初的目的是为了在客户端进行表单数据的校验
包含三部分
ECMAScript javascript的核心,描述了javascript的语法和基本对象
DOM 描述了操作页面内容的方法
BOM 描述了操作浏览器的方法
ECMAScript,DOM已经标准化
BOM并没有标准化,每个浏览器有不同的实现,比如Navigator对象,Location对象,Screen对象,对cookies的支持
二 ECMASccipt
1.语法
a.标识符,变量是大小写敏感的
b.变量是弱类型的,你可以在任何时刻改变变量的类型
c.结束语句的“;”分号 是 可选的,默认换行为结束语句
d.单行注释 // 多行注释 /* */
e.花括号 “{}” 指示代码块
2.变量
a.一行可以声明多个变量 var a='1',b=2
b.变量可以不声明,直接使用,比如 c = 3也是合法的,当解释器看到c的时候会自动声明一个 全局变量,注意是 全局变量,并且要执行到此语句时才会声明。
3.基本类型,引用值 和java类似,基本类型存放在stack里,放的是值 引用值 stack里放的是对象的内存地址,对象存放在heap里
ECMAScript规定的基本类型: undefined,null,boolean,string,number
每种基本类型都有它的表示范围以及文字替代 (literal representations)
使用typeof 操作符可以测试对象的类型
typeof的返回值有 string,number,undefined,boolean,object,function
a.undefined
一个未赋值的变量是undefined 例如 var a; alert(a)
对于变量,2种情况下会是undefined,一种是声明了未赋值,另外一种是根本不存在这个变量
对于没有返回值的function, 如果获取他的返回值,也是 undefined
b.null
null 是undefined的一种衍生 null == undefined 返回true undefined是指一个变量声明了未赋值,null是指这个变量指向的的对象是null
c.number
数字包括整数,浮点数,10进制和16进制。
无限大,无限小已经NaN
注意 NaN == NaN 返回false 要判断一个变量是否是数字,使用 isNaN进行判断
4.类型转换
a.转换为string 使用toString()方法 。对于number,可以使用toString(2,8,10,16)转换成相应的 2进制,8进制,10进制,16进制表示,toString()默认10进制
b.转换为number 2个方法 parseInt("") 和 parseFloat(""),这2个方法只有当传入的是string参数时才有效,否则返回NaN
对于parseInt("")和parseFloat("")都是从传入的字符串的第0个字符开始检查,如果不是数字则返回,如果是数字则一直继续检测,一直检测到第一个非法字符字符再进行转换,所以
parseInt("123a")和parseFloat("123.4a")会返回123和123.4
区别在于,parseInt可以指定要转换的字符串的进制,而parseFloat不可以
c.使用Boolean(arg) Number(arg) String(arg)进行相应的转换
Boolean(arg) 非0数字 非空字符串(长度大于0) 非空对象返回 true; 其他都返回false
Number(arg) 与parseInt和parseFloat不同,Number会检测整个字符串,再决定使用parseInt还是parseFloat,Number(true)=1 Number(false)=0 ,数字返回相应的数字,否则返回NaN
String(arg) 直接调用arg的toString()方法,区别在于,对于null,String(null)返回"null",null.toString()报错,undefined一样
分享到:
相关推荐
本项目是一个针对学校实训毕业设计的商业级网络营销网站,基于织梦内容管理系统(DedeCMS)构建,具有响应式设计,能...同时,对于企业来说,这样的项目可以作为一个基础,快速搭建出满足市场需求的高端网络营销平台。
首先,前端源码是构建Web应用程序的基础,包括HTML、CSS和JavaScript等技术。在这个压缩包中,我们看到有“index.html”文件,这是网站的主页文件,通常包含了整个网站的主要结构和内容。HTML(HyperText Markup ...
另外,宽屏设计还能够更好地展示高分辨率图像,提升视觉效果,使网站看起来更加高端大气。 从技术角度来看,使用Bootstrap框架开发的网站模板,通常具备良好的兼容性。它能够适配各种不同分辨率的设备,包括台式...
EXTJS是一个强大的JavaScript库,用于构建富客户端Web应用。它提供了丰富的组件系统、数据绑定和强大的布局管理,同时支持多种皮肤,让开发者可以轻松定制界面样式。在EXTJS中,皮肤(Theme)是一组CSS和图像文件,...
《Metronic响应式后台管理HTML5源码模板》是一款专为现代Web应用程序设计的高端、功能丰富的HTML5模板。这款模板以其灵活性、响应性和强大的功能集成为亮点,为开发高效、美观的后台管理系统提供了坚实的基础。 一...
【达内NETCTOSS电信计费系统项目】是一个基于Java技术栈的高端教育培训机构——达内科技推出的实战项目。这个项目旨在帮助学员深入理解并掌握电信行业的计费系统开发,提升其在.NET平台上的软件设计与开发能力。随着...
【商务精致企业官网模板蓝色版 v1.0】是一款专为商务领域设计的企业官方网站模板,其特点是采用蓝色调,营造出专业且高端的视觉效果。该模板基于HTML和CSS技术,利用了DIV+CSS布局方式,确保了网页的结构清晰、代码...
2. **颜色搭配**:黑金色组合常见于高端设计,黑色代表优雅和神秘,金色则象征奢华和品质,这种配色方案常用于吸引用户的注意力,提升品牌形象。 3. **文字动画**:通过文字动态变化来呈现加载状态,可以增强用户与...
它是一个完整的改变游戏规则的 React 仪表板模板,具有简单直观的响应式设计,就像在视网膜屏幕或笔记本电脑上一样。 Berry react 模板包含 TypeScript、应用程序、身份验证方法(即 JWT、Auth0、Firebase)、高级...