python web开发 JavaScript基础

文章目录

    • 1. script 标签
    • 2. 字面量、变量
    • 3. 数据类型
    • 4. 运算符
    • 5. if 条件
    • 6. switch分支
    • 7. for循环
    • 8. while循环
    • 9. break, continue
    • 10. 函数
    • 11. JS事件
    • 12. 引入JS的两种方式
      • 12.1 HTML页面嵌入
      • 12.2 引入外部JS文件

learning from 《python web开发从入门到精通》

  • JavaScript 跨平台、面向对象的 脚本语言,能使网页产生交互行为,服务端版本有 Node.js
  • 前端技术主要指:HTML(定义内容), CSS(描述样式), JavaScript(描述行为)

1. script 标签

  • <script> 脚本 </script>,脚本数量不限,可位于 body 部分 或 head 部分,或同时存在

2. 字面量、变量

  • 字面量:
    数字3.14, 1001, 12e5
    字符串"michael",'michael'(两种引号都可)
    数组 Array[1,2,3,4,5]
    对象 {name:"michael", age:18, hobby:"coding"}
    函数 function myFunc(a, b) {return a+b;}

  • 变量,var 定义变量,= 赋值(必须以字母,$,_开始,大小写敏感)

3. 数据类型

  • 值类型,引用数据类型
  • 值类型(基本类型):字符串,数字,布尔,空null,未定义undefined,唯一标识符symbol
  • 引用数据类型:数组,对象,函数
字符串
var name="michael";
var sentence="my name is 'michael', nice to meet you!";数值
var x = 3.14;
var y = 12e-6;布尔
var x = True;
var y = False;空
x=null; 清空变量的值数组
var hobby = new Array();
hobby[0] = "basketball";
hobby[1] = "singing";
hobby[2] = "playing games";var hobby=new Array("a", "b", "c");var hobby=["a", "b", "c"];对象
var person = {name:"michael", age:18}; 空格换行没有影响
对象寻址: 两种方式
name = person.name
age = person["age"]

声明变量类型

var name = new String;
var x = new Number;
var y = new Boolean;
var cars = new Array;
var person = new Object;

4. 运算符

  • 算术运算符,赋值运算符(跟c++一致)
  • 比较运算符多了===(值和类型均一样)!== (值,类型 至少有一个不一样)

5. if 条件

同c++,ifif ... elseif ... else if ... else

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>条件分支</title>
</head>
<body><script>var score = 78;if (score >= 90) {document.write("优秀");}else if (score >= 80) {document.write("良好");}else if (score >= 60) {document.write("及格");}else {document.write("不及格");}
</script></body>
</html>

在这里插入图片描述

6. switch分支

同c++

<script>var d = new Date().getDay();switch (d) {case 0:document.write("星期天");break;case 1:document.write("星期一");break;case 2:document.write("星期二");break;case 3:document.write("星期三");break;case 4:document.write("星期四");break;case 5:document.write("星期五");break;default:document.write("星期六");}
</script>

7. for循环

  • c++类似的形式
<script>var name = ["张三", "李四", "王五"];for(var i = 0; i < name.length; i++) {document.write(name[i] + "*");}
</script>

在这里插入图片描述

<script>for(var x = 5; x < 10; ++x) {var str = "";str += "数字是:"+ x + "<br>"; // <br> 换行document.write(str);}
</script>

在这里插入图片描述

  • for in 形式
<script>var students = {name:"michael", age:18, score:{chinese:80, math:90, english:70}};var txt = '';for(x in students) {if(x == 'score'){for(y in students.score){txt = y + ': ' + students.score[y] + '<br>';document.write(txt);}}else{txt = x + ': ' + students[x] + '<br>';document.write(txt);}}
</script>

在这里插入图片描述

8. while循环

同c++

  • while(condition){ }
  • do{ } while(condition);

9. break, continue

同c++

  • break 跳出当前循环
  • continue跳过当次循环迭代,进行下一次迭代

10. 函数

  • function funcName() { // 执行代码 }
<script>function myButton(){alert("hello Michael!")}
</script><button onclick='myButton()'>点击我</button>
<!--引号不加也可以-->

在这里插入图片描述

  • 带参数的函数
<script>function myButton1(name, course){alert("hello " + name + ", you are learning " + course + "!");}
</script><button οnclick=myButton1('Michael','web开发')>点击我</button>

在这里插入图片描述

  • 带返回值的函数 return
<div id="myfunction1"></div>
<script>function myFunc1(x, y){return x * y;}document.getElementById("myfunction1").innerHTML = myFunc1(3, 6);
</script>

11. JS事件

  • 如:浏览行为,用户行为
  • 常见事件:HTML加载完成,input 字段发生变化,按钮被单击
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>按钮事件</title>
</head>
<body><p>单击按钮获取当前时间: 执行 <em>displayDate()</em> 函数。</p>
<button onclick="displayDate()">获取时间</button>
<script>function displayDate() {var d = new Date(); // 实例化日期var now = d.toLocaleString(); // 转换为本地时间格式document.getElementById("here").innerHTML = now;//写入 id 为 here的元素中}
</script>
<p id="here"></p></body>
</html>

在这里插入图片描述

12. 引入JS的两种方式

12.1 HTML页面嵌入

如上所示 <script> function... </script> 嵌入

12.2 引入外部JS文件

  • <script src= url > </script> 指向外部 url .js 文件

myscript.js

function display123(){alert("hello Michael!");
}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>外部引用JS文件</title><script src="myscript.js"></script></head>
<body><button onclick="display123()">点击我!</button></body>
</html>

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/471465.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python web开发 jQuery基础

文章目录1. 引入 jQuery2. 基本语法3. jQuery 选择器3.1 元素选择器3.2 #id 选择器3.3 .class 选择器4. jQuery事件5. 获取内容和属性5.1 获取内容5.2 获取属性learning from 《python web开发从入门到精通》 jQuery 是一个轻量级的 JavaScript 函数库包含 元素选取&#xff0…

python web开发 Bootstrap框架基础

文章目录1. 安装2. Bootstrap 5 基本应用learning from 《python web开发从入门到精通》 Bootstrap 是最受欢迎的 前端组件库&#xff0c;用于 HTML&#xff0c;CSS&#xff0c;JavaScript 开发的 开源工具集 1. 安装 使用 CDN 引用 <link href"https://cdn.jsdeli…

window.cookie

本地测试cookie用火狐来测试 首先cookie是document上的一个属性。 先弹出一个cookie alert(document.cookie); //弹出是空的 设置cookie&#xff0c;格式是有一定要求的&#xff0c;格式是&#xff0c;名字值 这样的格式 所以设置的时候&#xff0c;这样设置 document.cook…

python web开发 网络编程 TCP/IP UDP协议

文章目录1. TCP/IP协议1.1 IP协议1.2 TCP协议2. UDP协议3. Socket4. TCP编程4.1 创建TCP服务器4.2 创建TCP客户端4.3 简易聊天工具5. UDP编程5.1 创建UDP服务器5.2 创建UDP客户端learning from 《python web开发从入门到精通》 1. TCP/IP协议 大家都用同样的协议 protocol&am…

python web开发 网络编程 HTTP协议、Web服务器、WSGI接口

文章目录1. HTTP协议2. Web服务器3. 静态服务器创建 web_server.py4. WSGI 接口4.1 CGI 通用网关接口4.2 WSGI4.3 定义 WSGI 接口4.4 运行 WSGI 服务learning from 《python web开发从入门到精通》 1. HTTP协议 应用层最主要的协议&#xff1a;HTTP协议&#xff08;HyperText…

android 75 新闻列表页面

new.xml <?xml version"1.0" encoding"UTF-8" ?> <newslist><news><title>黑马52期就业快报</title><detail>热烈祝贺黑马52期平均薪水突破13k</detail><comment>15687</comment><image>ht…

python web开发 MySQL数据库基础

文章目录1. 简介2. 下载安装3. 操作 MysQL 数据库3.1 创建数据库3.2 选择数据库3.3 查看数据库3.4 删除数据库4. 数据类型5. 操作 MysQL 数据表5.1 创建数据表5.2 查看表的结构5.3 修改表的结构5.4 删除数据表6. 操作 MySQL 数据表记录6.1 添加数据6.2 查询、修改、删除learnin…

python 操作MySQL数据库

文章目录1. 安装 PyMySQL2. 连接对象3. 游标对象4. 增删改操作cursor.execute(sql)cursor.executemany(sql, seq_of_params)5. 查询操作6. ORM编程常用 python ORM 库learning from 《python web开发从入门到精通》 1. 安装 PyMySQL conda 虚拟环境下安装 pip install pymysq…

python web框架基础

文章目录1. Web框架简介1.1 MVC1.2 模板引擎2. 常用 Python Web 框架3. 虚拟环境4. 部署方式learning from 《python web开发从入门到精通》 1. Web框架简介 简化 web 开发的软件框架 一般都支持&#xff1a;管理路由&#xff0c;支持数据库&#xff0c;MVC&#xff0c;ORM&…

导Excel数据到Oracle的脚本,Oracle使用TOAD实现导入导出Excel数据

在Oracle应用程序的开发过程中&#xff0c;访问数据库对象和编写SQL程序是一件乏味且耗费时间的工作&#xff0c;对数据库进行日常管理也是需要很多SQL脚本才能完成的。Quest Software为此提供了高效的Oracle应用开发工具-Toad。在Toad的新版本中&#xff0c;还加入了DBA模块&a…

Chapter 14 Exercises Problems

转载于:https://www.cnblogs.com/momoko/p/4937730.html

FastAPI 结合 SQLAlchemy 操作 MySQL 数据库

文章目录1. 安装 SQLAlchemy2. 创建数据库3. SQLAlchemy 连接 MySQL4. 创建数据模型5. 创建 Pydantic 模型6. crud 工具7. main函数learning from 《python web开发从入门到精通》 1. 安装 SQLAlchemy pip install sqlalchemy 2. 创建数据库 mysql -u root -p 命令行登录 M…

LeetCode 2094. 找出 3 位偶数

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 digits &#xff0c;其中每个元素是一个数字&#xff08;0 - 9&#xff09;。数组中可能存在重复元素。 你需要找出 所有 满足下述条件且 互不相同 的整数&#xff1a; 该整数由 digits 中的三个元素按 任意 顺序 依次连接 …

LeetCode 2095. 删除链表的中间节点(快慢指针)

文章目录1. 题目2. 解题1. 题目 给你一个链表的头节点 head 。删除 链表的 中间节点 &#xff0c;并返回修改后的链表的头节点 head 。 长度为 n 链表的中间节点是从头数起第 ⌊n / 2⌋ 个节点&#xff08;下标从 0 开始&#xff09;&#xff0c;其中 ⌊x⌋ 表示小于或等于 x…

LeetCode 2096. 从二叉树一个节点到另一个节点每一步的方向(最小公共祖先)

文章目录1. 题目2. 解题1. 题目 给你一棵 二叉树 的根节点 root &#xff0c;这棵二叉树总共有 n 个节点。 每个节点的值为 1 到 n 中的一个整数&#xff0c;且互不相同。 给你一个整数 startValue &#xff0c;表示起点节点 s 的值&#xff0c;和另一个不同的整数 destValue …

LeetCode 2097. 合法重新排列数对(欧拉路径)

文章目录1. 题目2. 解题1. 题目 给你一个下标从 0 开始的二维整数数组 pairs &#xff0c;其中 pairs[i] [starti, endi] 。如果 pairs 的一个重新排列&#xff0c;满足对每一个下标 i &#xff08; 1 < i < pairs.length &#xff09;都有 endi-1 starti &#xff0c…

《如何在大学里脱颖而出(How to Win at College)》读书笔记

《如何在大学里脱颖而出(How to Win at College)》读书笔记 图书简介 中文版&#xff1a; 英文版&#xff1a; 作者卡尔纽波特&#xff08;Cal Newport&#xff09;于 2004 年6月以优等生荣誉学会会员身份毕业于达特茅斯学院。曾在《华尔街日报》的学报和《今日商务》等杂志上发…

LeetCode 2099. 找到和最大的长度为 K 的子序列

文章目录1. 题目2. 解题1. 题目 给你一个整数数组 nums 和一个整数 k 。 你需要找到 nums 中长度为 k 的 子序列 &#xff0c;且这个子序列的 和最大 。 请你返回 任意 一个长度为 k 的整数子序列。 子序列 定义为从一个数组里删除一些元素后&#xff0c;不改变剩下元素的顺…

cms安装教程Linux,DoraCMS安装教程(linux)

最近在熟悉linux环境&#xff0c;也基本上把DoraCMS部署上去了&#xff0c;本教程基于ubuntu server 14.0.4&#xff0c;其它linux版本部署方式基本上差不多&#xff0c;下面详细说明一下&#xff1a;1、进入server环境下&#xff0c;在ubuntu目录下建立文件夹softbak,我们用来…

LeetCode 2100. 适合种地的日子(计数)

文章目录1. 题目2. 解题1. 题目 你和一群强盗准备种地。给你一个下标从 0 开始的整数数组 security &#xff0c;其中 security[i] 是第 i 天 天气热的数量。日子从 0 开始编号。同时给你一个整数 time 。 如果第 i 天满足以下所有条件&#xff0c;我们称它为一个适合种地的日…