JavaScript详解(二)
js的流程控制
- if语句:
if (条件表达式A){
xx;
}else if (条件表达式B){
xx;
}
else{
xx;
}
- switch语句:
switch (表达式){
case 值1:
xxx;
break;
case 值2:
xxx;
break;
default: //所有case都不满足时执行
xxx;
}
- for语句:
for(初始化语句;循环判断语句;循环执行语句){
xxx;
}
- while语句:
while(循环判断语句){
xxx;
}
- do....while语句:
do{
xxx;
}while(循环判断语句);
JavaScript的本地对象
字符型对象String
有三种定义方法:
- var s = new String('字符串内容');
- var s = String('字符串内容');
- var s = '字符串内容';
字符串的属性length可以返回其长度,可通过索引返回指定位置字符,通过+拼接。
数字转字符串:nub.tostring()
字符串转数字:Number(str)
字符串对象常用方法:
- str.substring(start,end):截取字符串,如果只传一个参数,则默认截取到最后一个为止。左闭右开。
- str.slice(start,end):切片,左闭右开,r若两个参数为负数,必须保证abs(start)>abs(end)。
- str.split("?"):切割,按照指定参数进行切割,返回一个数组。
- str.indexOf("?"):查找并返回匹配字符串出现的位置,若没找到,返回-1.
- str.toUpperCase():全部转换成大写。
- str.toLowerCase():全部转换成小写。
- str.Replace("a","b"):用b替换字符串中的a,只能替换一个。
日期对象Date
定义一个日期对象:var date = new Date();返回的格式如下:
Tue Nov 20 2018 21:22:41 GMT+0800 (中国标准时间)
获取方法:
- date.getFullYear():返回年份
- date.getMonth():返回月份,月份为实际月份减一,即十二月为0.
- date.getDate():返回日期
- date.getHours():返回当前小时
- date.getMinutes():返回当前几分
- date.getSeconds():返回当前多少秒
- date.getDay():返回周期,周日为0.
设置方法:将date换成set将变成对应的设置方法,但没有设置秒,设置年份为四位数字、设置月份范围为0~11、小时为0~23。
还可以以时间戳设置时间,单位是毫秒:date.setTime().
转换方法:原本时间格式是Tue Nov 20 2018 21:42:05 GMT+0800 (中国标准时间)
- date.toString(): Tue Nov 20 2018 21:43:55 GMT+0800 (中国标准时间)
- date.toTimeString(): 21:43:55 GMT+0800 (中国标准时间)
- date.toDateString(): Tue Nov 20 2018
- date.toLocaleString(): 2018/11/20 下午9:43:55
- date.toLocaleTimeString(): 下午9:43:55
- date.toLocaleDateString(): 2018/11/20
数学对象Math
数学对象常用属性有:
- PI :圆周率
- E:常量e,近似于2.71828
- LN2:2的自然对数
- LN10:10的自然对数
- LOG2E:以2为底的e的对数
- LOG10E:以10为底的e的对数
数学对象常用方法:
- Math.abs():取绝对值
- Math.ceil():往上取整
- Math.floor():往下取整
- Math.round():四舍五入取整
- Math.max():返回所有参数中的最大值
- Math.pow(x,y):返回x的y次幂
- Math.sqrt():返回参数的平方根
- Math.random():随即返回一个0~1的数
定时器
创建一个定时器有三种方式:
- 第一种使用setTimeout方法,这个定时器只执行一次。
timer = setTimeout(function(){
//执行语句
},1000); //timer是创建的一个定时器对象,1000是间隔时间,单位是毫秒
- 第二种使用setInterval方法,这种定时器可以一直执行下去。
timer = setInterval(function (){
//执行语句
},1000);
- 第三种也是用setInterval方法,但他是配合另外的函数使用。
setInterval(函数名,1000);
消除定时器
- clearInterval(定时器对象);
- clearTimeout(定时器对象);
定时器小例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>定时器</title>
<style>
*{
padding:0;
margin:0;
}
div.content{
height:150px;
margin-top:50px;
text-align: center;
}
.time{
color:red;
font-weight: bolder;
font-size:19px;
}
.end_time{
color:purple;
font-size: 21px;
/*margin-top:65px;*/
}
#clock{
text-align: center;
}
</style>
</head>
<body>
<div class="content">敌军还有<span class="time" second="5">5</span>秒到达战场</div>
<div id="clock"></div>
<script>
otime = document.getElementsByClassName("time");
ocontent = document.getElementsByClassName("content");
oclock = document.getElementById("clock");
var nub = otime[0].getAttribute("second");
// alert(nub);
timer = setInterval(function(){
nub--;
otime[0].innerHTML = nub;
if (nub === 0){
ocontent[0].innerHTML = "<p class='end_time'>全军出击!!!</p>";
clearInterval(timer);
}
},1000);
function fn() {
var data = new Date;
var year =data.getFullYear();
var mon = data.getMonth()+1;
var day = data.getDate();
var hour = data.getHours();
var minute = data.getMinutes();
var second = data.getSeconds();
if (minute<10){
minute = "0" + minute;
}
if (hour<10){
hour = "0" + hour;
}
if (second<10){
second = "0" + second;
}
oclock.innerHTML = year + "年" + mon + "月" + day + "日" + hour + "时" + minute + "分" + second + "秒";
}
fn();
setInterval(fn,1000);
</script>
</body>
</html>

JavaScript详解(二)的更多相关文章
- .NET DLL 保护措施详解(二)关于性能的测试
先说结果: 加了缓存的结果与C#原生代码差异不大了 我对三种方式进行了测试: 第一种,每次调用均动态编译 第二种,缓存编译好的对象 第三种,直接调用原生C#代码 .net dll保护系列 ------ ...
- PopUpWindow使用详解(二)——进阶及答疑
相关文章:1.<PopUpWindow使用详解(一)——基本使用>2.<PopUpWindow使用详解(二)——进阶及答疑> 上篇为大家基本讲述了有关PopupWindow ...
- Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)
[Android布局学习系列] 1.Android 布局学习之——Layout(布局)详解一 2.Android 布局学习之——Layout(布局)详解二(常见布局和布局参数) 3.And ...
- logback -- 配置详解 -- 二 -- <appender>
附: logback.xml实例 logback -- 配置详解 -- 一 -- <configuration>及子节点 logback -- 配置详解 -- 二 -- <appen ...
- 爬虫入门之urllib库详解(二)
爬虫入门之urllib库详解(二) 1 urllib模块 urllib模块是一个运用于URL的包 urllib.request用于访问和读取URLS urllib.error包括了所有urllib.r ...
- [转]文件IO详解(二)---文件描述符(fd)和inode号的关系
原文:https://www.cnblogs.com/frank-yxs/p/5925563.html 文件IO详解(二)---文件描述符(fd)和inode号的关系 ---------------- ...
- Android View 的绘制流程之 Layout 和 Draw 过程详解 (二)
View 的绘制系列文章: Android View 的绘制流程之 Measure 过程详解 (一) Android View 绘制流程之 DecorView 与 ViewRootImpl 在上一篇 ...
- HTTPS详解二:SSL / TLS 工作原理和详细握手过程
HTTPS 详解一:附带最精美详尽的 HTTPS 原理图 HTTPS详解二:SSL / TLS 工作原理和详细握手过程 在上篇文章HTTPS详解一中,我已经为大家介绍了 HTTPS 的详细原理和通信流 ...
- Linux dts 设备树详解(二) 动手编写设备树dts
Linux dts 设备树详解(一) 基础知识 Linux dts 设备树详解(二) 动手编写设备树dts 文章目录 前言 硬件结构 设备树dts文件 前言 在简单了解概念之后,我们可以开始尝试写一个 ...
- pika详解(二) BlockingConnection
pika详解(二) BlockingConnection 本文链接:https://blog.csdn.net/comprel/article/details/94592348 版权 Blocki ...
随机推荐
- mac安装和启动mongodb
使用使用 brew安装mongodb 可以使用 OSX 的 brew 来安装 mongodb: sudo brew install mongodb 如果要安装支持 TLS/SSL 命令如下: sudo ...
- JS - 使 input 失去焦点
$(document).ready(function(){ $("body").click(function(){ if(!event.srcElement.type) { ...
- (一)IOC基础推导及理论
环境准备:见java环境搭建,新建maven项目 1.写一个UserDao接口 public interface UserDao { public void getUser(); } 2.再写Dao的 ...
- Python 日期时间datetime 加一天,减一天,加减一小时一分钟,加减一年
计算年.月.日需要安装组件包 pip install python-dateutil 当前日期时间 import datetime print datetime.datetime.now() # 20 ...
- Xcode10趟坑之路
https://www.jianshu.com/p/12558d39ba08 先默念别有太多坑啊 跑起来吧 结果没有跑起来 1.第一个坑 Showing Recent Messages :-1: Mu ...
- (5)opencv的基础操作和矩阵的掩模操作
不懂的,可以简单,看看这个网址:https://blog.csdn.net/xiongwen_li/article/details/78503491 图片放到了桌面,所以,图片的路径就是桌面了,剩余的 ...
- Maven - pom.xml 文件
章节 Maven – 简介 Maven – 工作原理 Maven – Repository(存储库) Maven – pom.xml 文件 Maven – 依赖管理 Maven – 构建生命周期.阶段 ...
- vue仿写taobao
1.less () cnpm install less less-loader --save ()在webpack.base.conf.js里 { test:/\.less$/, loader:'st ...
- hadoop搭建一:虚拟机网络配置和基础(未完成)
基于VMware 15+CentOS 7+Hadoop 2.6,hadoop的搭建主要用于个人学习,水平有限. hadoop搭建一:虚拟机网络配置和基础 hadoop搭建二:hadoop全分布搭建 h ...
- 201771010123汪慧和《面向对象程序设计Java》第十五周实验总结
一.理论部分 1.JAR文件 (1)Java程序的打包:程序编译完成后,程序员将.class文件压缩打包为.jar文件后,GUI界面 程序就可以直接双击图标运行. (2).jar文件(Java归档)既 ...