1. String:

切割: 将一个字符串,按指定分隔符,切割为多段子字符串

简单切割: 切割符是固定的

var arr=str.split("切割符")

强调: 切割后的结果中,不包含切割符

复杂切割: 切割符是变化的

var arr=str.split(/正则/)

2. RegExp:

什么是: 封装一条正则表达式,并提供使用正则进行验证和查找的API

何时: 只要在程序中存储一条正则,并使用正则进行验证和查找

如何:

创建: 2种:

1. 如果正则表达式是固定不变的: 用//

var reg=/正则/ig

2. 如果正则表达式是动态变化的:

var reg=new RegExp("正则表达式", "ig")

API:

验证字符串的格式是否符合要求:

var bool=reg.test(str)

用reg检查 str 是否符合格式要求

返回bool:

问题: 默认,只要str中部分内容满足reg要求,就返回true。

解决: 凡是验证,必须前加^,后加$

即查找所有关键词的内容,又查找关键词的位置

var arr=reg.exec(str)

在str中查找下一个reg匹配的关键词的位置和内容

返回: arr的内容和match不加g时返回的arr结构一样

[0: 关键词, index: 位置]

强调: exec要想找所有,也必须加g

3. Math:

什么是: 保存所有数学计算的函数和常量的对象

何时: 只要执行算术计算时,都用Math

如何:

强调: Math不能new!所有的API,都用大写Math直接调用

API:

1. 取整:

上取整: Math.ceil(num)

下取整: Math.floor(num) 不识别单位,无法转换

parseInt(str) 可去掉数字后非数字的单位

四舍五入: Math.round(num)

缺: 只能取整

优: 返回number类型,可直接参与计算

num.toFixed(d)

优: 可灵活指定小数位数

缺: 返回字符串,无法参数+运算

2. 乘方和开平方

乘方: Math.pow(底数, 幂)

开平方: Math.sqrt(num)

3. 最大值和最小值:

Math.max(值1, 值2, ....)

Math.min(值1, 值2, ....)

问题: 不支持查找数组中的最大值和最小值

解决: spead:   ...数组

4. 随机数:

Math.random()  生成0~1之间的随机小数

公式: min~max之间取随机

parseInt(Math.randon()*(max-min+1)+min)

5. 计算角度:

反三角函数: Math.atan(对/临)

问题: 只能计算正负90度内的角度变化,无法区分象限

解决: Math.atan2(对, 临);

4. Date:

什么是: 封装一个时间,并提供操作时间的API

何时: 只要在程序中保存时间或操作时间

如何:

创建: 4种:

1. 创建日期对象,自动获得当前系统时间

var now=new Date()

强调: 只能拿到客户端系统时间

2. 创建日期对象,保存一个自定义时间

var birth=new Date("1993/12/26")

3. 将ms转化为日期对象:

为什么: 数据库中存储时间,都是保存时间的毫秒数

人看不懂

何时: 只要希望在内存中保存数据库中的时间时,都将ms转为date对象

如何: var date=new Date(ms);

4. 复制一个日期对象:

为什么: 日期的计算都是直接修改原日期对象,计算后,无法保留原日期

何时: 只要希望同时保留计算前后的开始和结束时间时,都要先将开始时间复制一个副本,再用副本计算结束时间

如何: var date2=new Date(date1)

JS高级-String- RegExp- Math- Date:的更多相关文章

  1. 总结JS中string、math、array的常用的方法

    JS为每种数据类型都内置很多方法,真的不好记忆,而且有些还容易记混,现整理如下,以便以后查看: 一.String ①charAt()方法用于返回指定索引处的字符.返回的字符是长度为 1 的字符串. 语 ...

  2. js中String 转化为 Date

    <script> var s=["2008-8-1","2009/9/2","10/3/2010"]; for(var i=0; ...

  3. Js高级 部分内容 面向对象

    1.单列模式 2.工厂模式 3.构造函数 (1)类 js天生自带的类 Object基类 Function  Array  String  Number  Math Date Boolean Regex ...

  4. JS内置对象-String对象、Date日期对象、Array数组对象、Math对象

    一.JavaScript中的所有事物都是对象:字符串.数组.数值.函数... 1.每个对象带有属性和方法 JavaScript允许自定义对象 2.自定义对象 a.定义并创建对象实例 b.使用函数来定义 ...

  5. JS中String类型转换Date类型 并 计算时间差

    JS中String类型转换Date类型 1.比较常用的方法,但繁琐,参考如下:主要使用Date的构造方法:Date(int year , int month , int day)<script& ...

  6. JS Math&Date的方法 (上)

    数学对象&时间对象 本篇文章主要介绍Math 和 Date  的常用方法! 一 :Math & Date         Math 数学对象 - 处理数学计算和数学类          ...

  7. JS高级学习路线——面向对象进阶

    构造函数进阶 使用构造函数创建对象 用于创建对象 其除了是一个函数之外,我们又称之为构造对象的函数 - 简称构造函数 function Product(name,description){ //属性 ...

  8. JS高级- OOP-ES5

    1. OOP 面向对象三大特点: 封装,继承,多态 封装: 问题: 构造函数可重用代码和结构定义,但无法节约内存 为什么: 放在构造函数内的方法定义,每new一次,都会反复创建副本——浪费内存 解决: ...

  9. Ext.js高级组件

    第二章:Ext.js高级组件 grid组件 普通方式 表格面板类Ext.grid.Panel xtype(别名):gridpanel.grid title标题.renderTo渲染至.width宽.h ...

  10. 读JS高级——第五章-引用类型 _记录

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. 【Spider】使用CrawlSpider进行爬虫时,无法爬取数据,运行后很快结束,但没有报错

    在学习<python爬虫开发与项目实践>的时候有一个关于CrawlSpider的例子,当我在运行时发现,没有爬取到任何数据,以下是我敲的源代码:import scrapyfrom UseS ...

  2. zookeeper报错: org.I0Itec.zkclient.exception.ZkMarshallingError: java.io.EOFException

    zookeeper报错: org.I0Itec.zkclient.exception.ZkMarshallingError: java.io.EOFException 主要因为是没有序列化. 可以使用 ...

  3. Zabbix3.2下Template App Zabbix Server+Template OS Linux Item

    序号 Name Key 返回值 释义1 Agent ping agent.ping 1 就是ping一下2 Avaliable memory vm.memory.size[available] 563 ...

  4. poj2492(带权并查集)

    题目链接:http://poj.org/problem?id=2492 题意:给出n个人,m条关系,每条关系表示的两个人异性,判断这m条关系是否有误. 思路:带权并查集,类似poj1182,并查集的向 ...

  5. 树形DP(记忆化搜索) HYSBZ - 1509

    题目链接:https://vjudge.net/problem/HYSBZ-1509 我参考的证明的论文:8.陈瑜希<多角度思考 创造性思维>_百度文库  https://wenku.ba ...

  6. 最小生成树 prime算法 UVALive - 6437

    题目链接:https://vjudge.net/contest/241341#problem/D 这里有多个发电站,需要求出所有点都和发电站直接或间接相连的最小代价,那么就是求出最小生成树的问题了,有 ...

  7. 【转】 UI自动化测试的关注点

    我发现了,大家极度关心自动化测试,尤其是UI自动化测试,虽然现在作为专项测试,离开这些越来越远了,但总能遥想以前,我总能想起自己做nokia的WindowsLive的ui自动化,做web的自动化测试, ...

  8. 9. Palindrome Number (考虑负数的情况)

    Determine whether an integer is a palindrome. Do this without extra space. long int reverse(int x) { ...

  9. 100-days:nine

    Title: Boeing(波音飞机) crash isolates FAA as(伴随,随着) China leads push against Max(出事机型,即737 Max) crash n ...

  10. .net项目错误:找不到方法:“System.Net.Http.HttpClient stellar_dotnet_sdk.Server.get_HttpClient()

    1.由于在项目里面引用了一个 新的项目stellar_dotnet_sdk,在  return new StellarWallet(ConvertToWalletSetting(coin));   的 ...