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学习者必看的经典教 ...
随机推荐
- Virtex6 PCIe 超简版基础概念学习(一)
文档版本 开发工具 测试平台 工程名字 日期 作者 备注 V1.0 ise14.7 DBF板 Day2/PCIETest1 2016.03.31 lutianfei none 参考资料: Sparta ...
- android studio- java注释自己动手弄起来
今天写段子...程序段子.突然觉得AS默认的注释太简洁,不适合自己.于是,自己琢磨半天,大概知道了途径.结果,好好的一个coding之夜也无疾而终了...明天继续跟着包工头学搬砖. 注释设置途径: 1 ...
- c#的bug?
在群里面有人提出了这么一个诡异的问题,请问15.5%3.1=? 然后,我就去看了看,因为他们说结果是3.1!!!
- HTML— 弹出遮盖层
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- JNDI架构提供了一组标准的独立于命名系统的API
JNDI架构提供了一组标准的独立于命名系统的API,这些API构建在与命名系统有关的驱动之上.这一层有助于将应用与实际数据源分离,因此不管应用访问的是LDAP.RMI.DNS.还是其他的目录服务.换句 ...
- python 使用正则表达式的爬虫
下面我们一起尝试一下爬取内涵段子网站: http://www.neihan8.com/article/list_5_1.html 打开之后,不难看到里面一个一个灰常有内涵的段子,当你进行翻页的时候,注 ...
- 【转发】linux开发人员常用命令
每个开发人员到了他们职业人生的某个阶段的时候,将会发现自己要寻找有关Linux的信息.我并不是这方面的专家.但是掌握了以下8个命令,我几乎可以得到我任何需要的东西. 注意:以下的命令都有很多扩展的文档 ...
- Javascript间歇调用和超时调用
间歇调用:每隔指定的时间就执行一次代码 超时调用:在指定的时间过后执行代码 HTML Code 12345678910111213141516171819 <!DOCTYPE html& ...
- hdu 2874(LCA)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2874 思路:近乎纯裸的LCA,只是题目给出的是森林,就要判断是否都在同一颗树上,这里我们只需判断两个子 ...
- supervisor 与 yii定时任务
https://www.jianshu.com/p/9abffc905645 https://www.cnblogs.com/ajianbeyourself/p/5534737.html https: ...