JavaScript学习笔记(一)——JS速览
第一章 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速览的更多相关文章
- javascript学习笔记(四) Number 数字类型
数字格式化方法toFixed().toExponential().toPrecision(),三个方法都四舍五入 toFixed() 方法指定小数位个数 toExponential() 方法 用科学 ...
- Java程序猿JavaScript学习笔记(14——扩大jQuery UI)
计划和完成这个例子中,音符的顺序如下: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScr ...
- JavaScript:学习笔记(9)——Promise对象
JavaScript:学习笔记(9)——Promise对象 引入Promise Primose是异步编程的一种解决方案,比传统的解决方案回调函数和事件更加合理和强大.如下面为基于回调函数的Ajax操作 ...
- JavaScript:学习笔记(2)——基本概念与数据类型
JavaScript:学习笔记(2)——基本概念与数据类型 语法 1.区分大小写.Test 和 test 是完全不同的两个变量. 2.语句最好以分号结束,也就是说不以分号结束也可以. 变量 1.JS的 ...
- Javascript学习笔记二——操作DOM
Javascript学习笔记 DOM操作: 一.GetElementById() ID在HTML是唯一的,getElementById()可以定位唯一的一个DOM节点 二.querySelector( ...
- Java程序猿的JavaScript学习笔记(汇总文件夹)
最终完结了,历时半个月. 内容包含: JavaScript面向对象特性分析,JavaScript高手必经之路. jQuery源代码级解析. jQuery EasyUI源代码级解析. Java程序猿的J ...
- Java程序猿的JavaScript学习笔记(8——jQuery选择器)
计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...
- Java程序猿JavaScript学习笔记(2——复制和继承财产)
计划和完成在这个例子中,音符的以下序列: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaSc ...
- Java程序猿的JavaScript学习笔记(3——this/call/apply)
计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...
随机推荐
- 【星云测试】Wings-让单元测试智能全自动生成
Wings-让单元测试智能全自动生成 前言 单元测试是保证软件质量非常有效的手段,无论是从测试理论早期介入测试的理念来看或是从单元测试不受UI影响可以高速批量验证的特性,所以业界所倡导的测试驱动开发, ...
- win7在安装时跳过输入用户名界面,直接开启管理员用户
WIN7原版系统安装完后需要创建用户,为了追求纯净简化不必要的步骤,可以选择跳过创建用户直接启用内置管理员账户.首先,到了创建用户这一步先别急着往下点,此时按键盘的SHIFT + F10 组合键调出命 ...
- Linq 和 SQL的左连接、右连接、内链接
在我们工作中表连接是很常用的,但常用的有这三种连接方式:左连接.右连接.内链接 在本章节中讲的是1.如何在Linq中使用左连接,右连接,内连接. 2.三种连接之间的特点在哪? 3.Linq的三种连接语 ...
- 给大家推荐一款非常好用的表单验证插件:lr-verify.js
废话不说,直接上代码说明,1分钟学会: 例: 1.验证配置 $.extend(Verify.types, { "must" : { "verify" : fun ...
- 如何设计处优秀的Restful API
只知道遵规循矩的程序员是假程序员,任何技术都是不断发明创造改进的. 如何设计处优秀的Restful API? 盲目跟风,设计糟糕的Resful API = 浪费时间 ! 不啰嗦,直接进入技术主题: ...
- Vue如何循环渲染图片
Vue如何把服务器返回的图片数据渲染出来 首先,一般来说,当请求图片的接口时,会返回一个数组,这个数组里会是一些图片的名字,比如1.jpg,2.jpg. 我的做法是先在data里定义一个数组,来存储服 ...
- MySQL数据库实验:任务一 创建数据库和表
目录 任务一 创建数据库和表 [实训目的与要求] [实训原理] [实训步骤] 一.熟悉MySQL环境 二.利用MySQL命令行窗口创建数据库及表 三.利用界面工具创建数据库及表 任务一 创建数据库和表 ...
- Flink-on-yarn
介绍 官网下载 https://www.apache.org/dyn/closer.lua/flink/flink-1.6.1/flink-1.6.1-bin-hadoop28-scala_2.11. ...
- Kafka解惑之时间轮 (TimingWheel)
Kafka中存在大量的延迟操作,比如延迟生产.延迟拉取以及延迟删除等.Kafka并没有使用JDK自带的Timer或者DelayQueue来实现延迟的功能,而是基于时间轮自定义了一个用于实现延迟功能的定 ...
- Jlink-10 pin 的定义(stm32使用)官方定义
因为在网上找了好久才找到正确的接法,所以专门记载了下来,因为stm32芯片这几个功能引脚会内置上拉电阻,所以不需要再外接电阻了.