第六周学习周记

  • 前言
  • 一、JavaScript简介
  • 二、JavaScript用法
  • 三、JavaScript语法
    • 1. JavaScript字面量
    • 2. JavaScript变量
    • 3. JavaScript操作符
    • 4. JavaScript关键字
    • 5. JavaScript数据类型
  • 四、JavaScript对象
  • 五、JavaScript函数
  • 六、JavaScript事件
  • 总结

前言

在上一周学习了BootStrap后,这一周将学习新的知识:JavaScript。


一、JavaScript简介

JavaScript是一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript,但实际上它的语法风格与Self及Scheme较为接近。
为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。


二、JavaScript用法

代码:

<body><p>
JavaScript 能够直接写入 HTML 输出流中:
</p>
<script>
document.write("<h1>这是一个标题</h1>");
document.write("<p>这是一个段落。</p>");
</script>
<p>
您只能在 HTML 输出流中使用 <strong>document.write</strong>。
如果您在文档已加载后使用它(比如在函数中),会覆盖整个文档。
</p></body>

运行结果:


三、JavaScript语法

JavaScript是一个程序语言,其语法规则定义了语言结构。
JavaScript是一个脚本语言,是一个轻量级,但功能强大的编程语言。

1. JavaScript字面量

代码:

<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = 5 * 9;
</script>

运行结果:

2. JavaScript变量

代码:

<p id="demo"></p>
<script>
var length;
length = 9;
document.getElementById("demo").innerHTML = length;
</script>

运行结果:

3. JavaScript操作符

代码:

<p id="demo"></p>
<script>
var x, y, z;
x = 2;
y = 4;
z = (x + y) * 7;
document.getElementById("demo").innerHTML = z;
</script>

运行结果:

4. JavaScript关键字

JavaScript关键字用于标识要执行的操作,和其他任何编程语言一样,JavaScript保留了一些关键字为自己所用。

以下是JavaScript中最​​重要的保留字

5. JavaScript数据类型

var length = 20;                                  // Number 通过数字字面量赋值
var points = x * 5;                               // Number 通过表达式字面量赋值
var lastName = "Jim";                             // String 通过字符串字面量赋值
var cars = ["Saab", "Volvo", "BMW"];              // Array  通过数组字面量赋值
var person = {firstName:"John", lastName:"Doe"};  // Object 通过对象字面量赋值

四、JavaScript对象

在JavaScript中,几乎所有的事物都是对象,对象是非常重要的,当你理解了对象,就可以了解 JavaScript。
对象也是一个变量,但对象可以包含多个值(多个变量),每个值以name:value对呈现。

代码:

<p>创建 JavaScript 对象。</p>
<p id="demo"></p>
<script>
var person = {firstName : "Jim",lastName  : "Doe",age       : 20,eyeColor  : "blue"
};
document.getElementById("demo").innerHTML =person.firstName + " 现在 " + person.age + " 岁。";
</script>

运行结果:


五、JavaScript函数

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。

代码:

<p>点击这个按钮,来调用带参数的函数。</p>
<button onclick="myFunction('Harry Potter','Wizard')">点击这里</button>
<script>
function myFunction(name,job){alert("Welcome " + name + ", the " + job);
}
</script>

运行结果:


六、JavaScript事件

HTML事件可以是浏览器行为,也可以是用户行为。
在事件触发时JavaScript可以执行一些代码。
HTML元素中可以添加事件属性,使用JavaScript代码来添加HTML元素。

代码:

<body><button onclick="getElementById('demo').innerHTML=Date()">现在的时间是?</button>
<p id="demo"></p>

运行结果:

常见的HTML事件:

事件 描述
onchange HTML元素改变
onclick 用户点击HTML元素
onmouseover 用户在一个HTML元素上移动鼠标
onmouseout 用户从一个HTML元素上移开鼠标
onkeydown 用户按下键盘按键
onload 浏览器已完成页面的加载

总结

在这一周学习了JavaScript,了解了JavaScript是如何与HTML和CSS一起工作的,是互联网上最流行的脚本语言,这门语言可用于HTML和web,更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。

第六周学习周记——学习JavaScript相关推荐

  1. 软件工程学习进度第六周暨暑期学习进度之第六周汇总

    本周通过深度学习的卷积神经网络(CNN)实现了mnist数据集手写数字识别(前段时间实现的是全连接神经网络做的手写数字识别),使用全连接时识别准确率在91%左右,这个精度在手写数字中实在不高,但是使用 ...

  2. 第六周 day6 python学习笔记

    1.Python面向对象编程OOP(Object Oriented Programming) 封装:可以隐藏实现细节,使代码模块化 继承:可以扩展已存在的代码模块,可以使代码实现重用 多态:一种接口, ...

  3. 2018-2019-2 20189221 《网络攻防技术》第六周作业

    2018-2019-2 20189221 <网络攻防技术>第六周作业 视频学习(21-25) KaliSecurity-密码攻击之在线攻击工具 1.Cewl 可以通过爬行网站获取关键信息创 ...

  4. 2018-2019-2 20189206 《网络攻防实践》 第六周作业

    2018-2019-2 20189206 <网络攻防实践> 第六周作业 课本学习 TCP/IP网络协议栈攻击 网络安全属性与攻击模式 机密性 保护网络中的信息安全,通常使用加密算法 完整性 ...

  5. 2017-2018-2 20179205 《网络攻防技术与实践》第六周作业

    <网络攻防技术与实践>第六周作业 视频学习总结 一.kali密码攻击之在线工具攻击 密码攻击是安全测试中必不可少的一环,而在线攻击多为对一个服务远程连接并使用用户名与密码破解. 1.cew ...

  6. 第十五周学习周记——微信小程序开发初步

    第十五周学习周记 前言 一.小程序简介 二.小程序代码构成 1. JSON配置 2. WXML模板 3. WXSS样式 4. JS逻辑交互 总结 前言 这一周将开始微信小程序的学习. 一.小程序简介 ...

  7. 2018-2019-1 20165214 《信息安全系统设计基础》第六周学习总结

    20165214 2018-2019-1 <信息安全系统设计基础>第六周学习总结 教材学习内容总结 1.输入操作是从I/O设备复制数据到主存,而输出操作是从主存复制数据到I/O设备 2.U ...

  8. 20162303 2016-2017-2 《程序设计与数据结构》第六周学习总结

    20162303 2016-2017-2 <程序设计与数据结构>第六周学习总结 教材学习内容总结 通过继承来创建类,比从零开始编写代码来的更快.更容易也更经济. 继承在父类与子类之间建立了 ...

  9. # 20155337 2016-2017-2 《Java程序设计》第六周学习总结

    20155337 2016-2017-2 <Java程序设计>第六周学习总结 教材学习内容总结 •串流(Stream): 数据有来源及目的地,衔接两者的是串流对象.如果要将数据从来源取出, ...

最新文章

  1. windows 安装PyTorch0.4.0
  2. Binder通信机制介绍
  3. 10分钟,快速使用VUE-VUEX
  4. 反思转变:多努力以积累  多动脑以应变
  5. 程序员的爱情独白(转)
  6. 模型部署到移动端_谷歌开源 MobileNetV3:新思路 AutoML 改进计算机视觉模型移动端...
  7. antd picker 使用 如何_如何基于jsoneditor二次封装一个可实时预览的json编辑器组件?(react版)...
  8. SharePoint 2010的数据库服务器实例默认为sqlserver2
  9. if判断与while、for循环语句
  10. Hadoop大数据平台构建与应用
  11. Python参考文献
  12. 下载安装Vue-CLI
  13. 创蓝253云通讯短信平台变量说明
  14. Materials Studio软件常见问题与解决方案(二)
  15. 192.168.8.1手机登陆_192.168.8.1登录入口上网设置
  16. 自媒体的推广方式有哪些(自媒体推广的10种方法)
  17. 老司机 iOS 周报 #41 | 2018-10-29
  18. django models报错Manager isn‘t accessible via UserInfo instances
  19. Kali系统及Frida环境配置
  20. java对接 布防 海康威视_基于海康威视SDK javaB/S

热门文章

  1. 落谷 P1464 function (空间换时间、记忆化搜索)
  2. 获取小数点前面的数字
  3. 关于微信电子发票生态,这三种服务商最有机会
  4. 基于element实现文件(资源)上传 - 好用
  5. 2018湖湘杯writeup
  6. 10M/S+百度网盘不限速,一次性安排4个软件,手机电脑全覆盖!
  7. 电商外包众生相:从淘宝吃饭到海外运营
  8. ModuleNotFoundError: No module named ‘suit.apps‘
  9. GoogLeNet神经网络
  10. 字符串格式的格林威治时间转换为Date类型