javascript高级语法
一、JavaScript对象
1、js对象简介
1.1 在JavaScript中除了null和undefined以外其他的数据类型都被定义成了对象,也可以用创建对象的方法定义变量,在JavaScript程序大多数功能都是基于对象实现的。
1.2 js的内置对象分类
2、字符串对象(String)
2.1字符串对象的创建方式
方式一:变量名=''字符串''
方式二:字串对象名称 = new String (字符串)
2.2字符串对象的属性
2.2.1 字符串基本用法:
x.length :获取字符串的长度,空格也算。
x.toLowerCase() :字符串转为小写
x.toUpperCase() :字符串转为大写
x.trim() :去除字符串两边空格
2.2.2字符串查询方法
x.charAt(index) :获取指定位置字符,其中index为要获取的字符索引号。
x.indexOf(findstr):查询字符串位置,返回的结果是索引号,从开头开始查询符合条件的第一个字符串。
x.lastIndexOf(findstr) :查询字符串位置,返回的结果是索引号,从开头开始查询符合条件的最后一个字符串。
x.match(regexp) :match返回匹配字符串的数组(与字典类似),如果没有匹配则返回null。
x.search(regexp) :search返回匹配字符串的首字符位置索引。
2.2.3 子字符串处理方法
x.substr(start, length) :start表示开始位置,length表示截取长度,都是数字表示。
x.substring(start, end) :start表示开始位置,end是结束位置,都是数字表示
x.slice(start, end) :切片操作字符串,顾头不顾尾。
x.replace(oldstr,newstr) :字符串替换
x.split(); :分割字符串,默认不是以空格作为分隔符。
x.concat(addstr) : 拼接字符串
3、数组对象(Array)
3.1数组对象的创建方式(相当于python中的列表):
方式1:var arrayname=[元素1,元素2,元素3......];
方式2:var arrname = new Array(元素0,元素1,….);
方式2:var arrname = new Array(长度);
3.2数组对象的属性和使用方法:
1、jion方法:将数组内的元素拼接成一个字符串。
var arrayname=[元素1,元素2,元素3......].join(''-'')
2、concat方法:向某一个数组内(后)添加元素(拼接数组)
x.concat(元素1,元素2.....)
3、toString方法:将数组内的元素转化成字符串,有几个元素转换成几个字符串
x.toString()
4、reverse sort方法:reverse 翻转数组元素,sort数组元素按照asa表排序
x.reverse()
x.sort()
5、slice方法:对数组进行切片
x.slice(start,end) start,end表示的是数组元素的索引位置,但是顾头不顾尾。
6、splice方法:删除或插入数组中的元素。
x. splice(start, deleteCount, value, )
其中:x代表数组对象 ,splice的主要用途是对数组指定位置进行删除和插入。
start表示开始位置索引 ,deleteCount删除数组元素的个数
value表示在删除位置插入的数组元素 ,value参数可以省略
7、push,pop,unshift,shift: unshift,shiftunshift,shiftunshift,shift:unshift,shift:unshift,shift:unshift,shift::push是向数组末尾添加多个元素,pop是向数组末尾删除一个元素。
x.push(元素,元素2.....) :显示的是添加后的元素的个数,可以一次性添加多个
x.pop() :显示的是删除时的元素,一次性只能删除一个
8、unshift,shift:unshift是向数组开头添加多个个元素,shift是向数组开头删除一个元素。
x.unshift(元素1,元素2....) :显示的是添加后的元素的个数,可以一次性添加多个
x.shift() :显示的是删除时的元素,一次只能删除一个
4、时间对象(Date)
4.1创建时间对象的方法:
方法1:var date1=new Date(); 不指定任何参数
方法2:var date2=new Date("2004/3/20 11:12"); 参数为日期字符串
方式3:var nowd3=new Date(5000); 参数为毫秒数
方式4:var nowd4=new Date(2004,2,20,11,12,0,300); 参数为年月日小时分钟秒毫秒
4.2Date对象使用方法:
getDate() 获取日
getDay () 获取星期
getMonth () 获取月(0-11)
getFullYear () 获取完整年份
getYear () 获取年
getHours () 获取小时
getMinutes () 获取分钟
getSeconds () 获取秒
getMilliseconds () 获取毫秒
getTime () 返回累计毫秒数(从1970/1/1午夜)
4.3var time1=new Date().toString(); 获取当前时间字符串
5、Math对象:该对象的属性方法和数字相关
abs(x) 返回数的绝对值。
exp(x) 返回 e 的指数。
floor(x)对数进行下舍入。
log(x) 返回数的自然对数(底为e)。
max(x,y) 返回 x 和 y 中的最高值。
min(x,y) 返回 x 和 y 中的最低值。
pow(x,y) 返回 x 的 y 次幂。
random() 返回 0 ~ 1 之间的随机数。
round(x) 把数四舍五入为最接近的整数。
sin(x) 返回数的正弦。
sqrt(x) 返回数的平方根。
tan(x) 返回角的正切。
6、function对象:该对象是定义函数的
6.1 方法1:function
函数名(参数){
函数体
}
方法2:var
函数名 =
new
Function(
"参数1"
,
"参数n"
,
"function_body"
);
javascript高级语法的更多相关文章
- javascript高级语法学习
可维护的代码意味着: 可读的 一致的 可预测的 看上去就像是同一个人写的 已记录 命名函数表达式 (function fn(){}) 他是表达式的原因是因为括号 ()是一个分组操作符,它的内部只能包含 ...
- javascript高级语法二
一.BOM对象 1.什么是BOM对象? BOM是浏览器对象模型,核心对象就是window,所有浏览器都支持 window 对象.一个html文档对应一个window对象,主要功能是控制浏览器窗口的, ...
- javascript高级语法三
一.js的正则表达式 1.什么是正则表达式 正则表达式(regular expression)是一个描述字符模式的对象,ECMAScript的RegExp类表示正则表达式,而String和RegExp ...
- 读书笔记(06) - 语法基础 - JavaScript高级程序设计
写在开头 本篇是小红书笔记的第六篇,也许你会奇怪第六篇笔记才写语法基础,笔者是不是穿越了. 答案当然是没有,笔者在此分享自己的阅读心得,不少人翻书都是从头开始,结果永远就只在前几章. 对此,笔者换了随 ...
- 《JavaScript高级程序设计(第3版)》阅读总结记录第一章之JavaScript简介
前言: 为什么会想到把<JavaScript 高级程序设计(第 3 版)>总结记录呢,之前写过一篇博客,研究的轮播效果,后来又去看了<JavaScript 高级程序设计(第3版)&g ...
- 《JavaScript高级程序设计》读书笔记--前言
起因 web编程过程使用javascript时感觉很吃力,效率很低.根本原因在于对javascript整个知识体系不熟,看来需要找些书脑补一下,同时欢迎众网友监督. 大神推荐书籍 看了博客大神们推荐的 ...
- 《JavaScript高级程序设计》学习笔记(5)——面向对象编程
欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 本节内容对应<JavaScript高级程序设计>的第六章内容. 1.面向对象(Object ...
- 《JavaScript高级程序设计》学习笔记(4)——引用类型
欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 本节内容对应<JavaScript高级程序设计>的第五章内容. 在ECMAScript中, ...
- 1 《JavaScript高级程序设计》学习笔记(1)
欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 首先,我将从<JavaScript高级程序设计>这本JavaScript学习者必看的经典教 ...
随机推荐
- 基于Virtext6平台的GTX IP核基本设置说明
本工程基于以下条件使用: 板卡:DBF板v3.0 芯片型号:Virtex6 315T ISE版本:14.7 IP核版本: v6_gtxwizard : 1.12 一.IP核配置进行流程 第一页配置:线 ...
- oracle的一些问题
好久时间没有用oracle,这次因为有个项目的需要,又重新温习了一下oracle. 我使用的oracle的版本是windows oracle 11g_R2. 首先先说一下安装.这个没有太大的问题,主要 ...
- centos6.5下redis集群配置(多机多节点)
可参考官网文档:redis集群配置 需要注意的是,集群中的每个节点都会涉及到两个端口,一个是用于处理客户端操作的(如下介绍到的6379/6380),另一个是10000+{监听端口},用于集群各个节点间 ...
- linux 命令之 ping
ping命令主要用于检測主机的连通性. 语法: ping [-dfnqrRv] [-c <完毕次数>] [-i <间隔秒数>] [-I <网络接口>] [-l &l ...
- (转)秒懂,Java 注解 (Annotation)你可以这样学
转自:秒懂,Java 注解 (Annotation)你可以这样学 注解如同标签 回到博文开始的地方,之前某新闻客户端的评论有盖楼的习惯,于是 “乔布斯重新定义了手机.罗永浩重新定义了傻X” 就经常极为 ...
- hibernate Session一级缓存 应该注意的地方
Session缓存 Hibernate的一级缓存是由Session提供的,因此它存在于Session的整个生命周期中,当程序调用save()/update()/saveOrupdate()/get() ...
- poj 1515+poj 1438(边双连通)
题目链接:http://poj.org/problem?id=1515 思路:题目的意思是说将一个无向图改成有向图,使其成为强连通,输出所有的边.我们可以求无向图的边双连通分量,对于同一个双连通分量, ...
- Linux文件类型及目录配置
Linux文件类型与扩展名 在Linux系统中,任何硬件设备或者其他设备都是以文件的形式存在,就连数据通信的接口这些也是由专门的文件来负责的,因此Linux的文件种类就非常多,出了之前我们常见的 - ...
- iOS内存管理之浅见
当我们用alloc.new.copy创建对象时,对象的应用计数为1,当把这个对象retain时.引用计数+1.当对这个对象发送release消息时,引用计数-1,当对象的引用计数为0时,系统回收这个对 ...
- 更改Scala的代码自己主动补全快捷键code completion
使用Eclipse的代码补全快捷键alt+/已经习惯了.可是IntelJIDEA中这个快捷键组合没有效果,那么我们来改动之,按ctrl+alt+s打开设置界面 之后在keymaps中选择Eclipse ...