第一章 JS速览

1 限制时间处理事件

 <script>

 setTomeout(wakeUpUser,5000);

 function wakeUpUser()

 {

 alert("Are you going to start at this boring page forever?");

 }

 </script>

2 变量 var 可以声明 数值 字符 布尔类型,可以声明加赋值,也可以只声明。

变量命名规则:*以字母、下划线、美元符号打头;*字母数字下划线美元

*避免关键字

3 语法规则:

*每条语句分号结尾;

*单行注释  //

*空白无关紧要

*字符串可以单引号也可以双引号穿起来

*不用括号括起 true和false

*声明变量可以不给他指定值

*区分大小写

4 表达式:表达式的结果都为某种值(数字 字符串 布尔)

*var total=price-(price*(discount/100));

*"dear"+"reader"+""+name(变量)

*phonenum.substring(0,3);//

5 与用户交流

创建提箱框:alert("提醒文本");

直接写入文档:document.write();

控制台:console.log();

【控制台主要作用是写入日志,不在网页最终版本中使用,仅在开发网页期间调试代码

 <script>

 var message="Howdy"+" "+"partber";

 console.log(message);

 </script>

直接操作文档:文档对象模型;

6  Javascript代码的放置位置:<head>(在加载整个网页内容前加载script代码)

<body>当然也可以在这两个部位使用外部<script src="xx.js"></script>

外部文件中直接放js代码,不需要<script>

!不能在引入外部文件的同时嵌入内部的js代码

7 开发一款战舰游戏

认识函数:var m=prompt("提示字符");//prompt函数返回输入的字符串

Math.random();//生成随机数0-1,如果生成0-100则*101

Math.floor();//将数字四舍五入

源:

 <!doctype html>

 <html lang="en">

 <head>

 <title>Battleship</title>

 <meta charset="utf-8">

 </head>

 <body>

 <h1>Play battleship!<h1>

 <script language="JavaScript" type="text/JavaScript">

 var location1,location2,location3;

 var guess;

 var hits1=0,hits2=0,hits3=0;

 var guesses=0;

 var isSunk=false;

 while(!isSunk)

 {

 //生成新的随机战舰位置

 location1=Math.floor(Math.random()*7);

 location2=Math.floor(Math.random()*7);

 while(location2==location1)

 location2=Math.floor(Math.random()*7);

 location3=Math.floor(Math.random()*7);

 while(location3==location1||location3==location2)

 location3=Math.floor(Math.random()*7);

 //获取用户输入

 guess=prompt("Ready,aim,fire!(enter a number 0-6):");

 if(guess>6||guess<0)

 {

 alert("Please enter a valid cell number!");

 }else

 {

 guesses=guesses+1;

 if(guess==location1)

 {

 alert("HIT 1!");

 if(hits1==3)

 {

 alert("You sank my battleship 1!");

 }

 else

 hits1=hits1+1;

 }

 else if(guess==location2)

 {

 alert("HIT 2!");

 if(hits2==3)

 {

 alert("You sank my battleship 2!");

 }

 else

 hits2=hits2+1;

 }

 else if(guess==location3)

 {

 alert("HIT 3!");

 if(hits3==3)

 {

 alert("You sank my battleship 3!");

 }

 else

 hits3=hits3+1;

 }

 else

 alert("MISS!");

 if(hits1==3&&hits2==3&&hits3==3)

 {

 isSunk=true;

 alert("You sank all my battleship!");

 }

 }

 }

 var states="You took "+guesses+" guesses to sink the battleship, "+"which means your shooting accuracy was "+(3/guesses);

 alert(states);

 </script>

 </body>

 </html>

JavaScript学习笔记(一)——JS速览的更多相关文章

  1. javascript学习笔记(四) Number 数字类型

    数字格式化方法toFixed().toExponential().toPrecision(),三个方法都四舍五入 toFixed() 方法指定小数位个数  toExponential() 方法 用科学 ...

  2. Java程序猿JavaScript学习笔记(14——扩大jQuery UI)

    计划和完成这个例子中,音符的顺序如下: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScr ...

  3. JavaScript:学习笔记(9)——Promise对象

    JavaScript:学习笔记(9)——Promise对象 引入Promise Primose是异步编程的一种解决方案,比传统的解决方案回调函数和事件更加合理和强大.如下面为基于回调函数的Ajax操作 ...

  4. JavaScript:学习笔记(2)——基本概念与数据类型

    JavaScript:学习笔记(2)——基本概念与数据类型 语法 1.区分大小写.Test 和 test 是完全不同的两个变量. 2.语句最好以分号结束,也就是说不以分号结束也可以. 变量 1.JS的 ...

  5. Javascript学习笔记二——操作DOM

    Javascript学习笔记 DOM操作: 一.GetElementById() ID在HTML是唯一的,getElementById()可以定位唯一的一个DOM节点 二.querySelector( ...

  6. Java程序猿的JavaScript学习笔记(汇总文件夹)

    最终完结了,历时半个月. 内容包含: JavaScript面向对象特性分析,JavaScript高手必经之路. jQuery源代码级解析. jQuery EasyUI源代码级解析. Java程序猿的J ...

  7. Java程序猿的JavaScript学习笔记(8——jQuery选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  8. Java程序猿JavaScript学习笔记(2——复制和继承财产)

    计划和完成在这个例子中,音符的以下序列: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaSc ...

  9. Java程序猿的JavaScript学习笔记(3——this/call/apply)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

随机推荐

  1. Android Asynctask与Handler的比较,优缺点区别,Asynctask源码

    1  AsyncTask实现的原理,和适用的优缺点 AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以 ...

  2. DPDK+Pktgen 高速发包测试

    参考博客 Pktgen概述 Pktgen,(Packet Gen-erator)是一个基于DPDK的软件框架,发包速率可达线速. 提供运行时管理,端口实时测量. 可以控制 UDP, TCP, ARP, ...

  3. vue组件中,iview的modal组件爬坑--modal的显示与否应该是使用v-show

    这是我第一次写博客,主要是记录下自己解决问题的过程和知识的总结,如有不对的地方欢迎指出来! 需求:点击btn,弹出modal显示图表(以折现图为例) 这应该是很基本的需求也是很容易实现的,代码和效果如 ...

  4. Redis 单机和多实例部署

    作者:北京运维 1. 安装环境说明 OS 版本:CentOS 7.5.1804 Redis 版本:redis-3.2.12 Redis 下载页面:http://download.redis.io/re ...

  5. vue数组赋值

    在使用vue开发移动端项目过程中,统一数组在对多个变量赋值时:希望一个数组的改变不影响另外一个数组,此时可以使用如下方式实现: let arr = [] let a1 = JSON.parse(JSO ...

  6. PHP的strtotime()函数2038年bug问题

    最近在开发一个订单查询模块的时候,想当然的写了个2099年的日期,结果PHP返回了空值,肯定是发生溢出错误了,搜索了网上,发现下面这篇文章,但是我的问题依然没有解决,要怎么得到2038年以后的时间戳呢 ...

  7. Flume(1)-概述与组成架构

    一. 定义 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统.Flume基于流式架构,灵活简单. 二. 优点 1. 可以和任意集中式存储进程集成. 2. ...

  8. 【JVM】TroubleShooting之内存溢出异常(OOM)与调优

    1. OOM概述 If your application's execution time becomes longer and longer, or if the operating system ...

  9. python格式化输出、逻辑表达式和字符编码

    格式化输出: %s  字符串占位符;%d 整数占位符 注意:如果前面有了占位符,那么后面所有的%都是占位,如果要输出“%”,需要使用转移符,即"%%" #定义三个变量 name = ...

  10. web安全入门笔记

    0x01 前言 这正邪两字,原本难分. 正派弟子若是心术不正,便是邪徒. 邪派中人只要一心向善,便是正人君子. 0x01 信息安全的定义 信息安全,意为保护信息及信息系统免受未经授权的进入.使用.披露 ...