JavaScript 学习日记(1)---初识JavaScript

news2024/9/21 13:09:45

初识JavaScript

文章目录

  • 初识JavaScript
    • 一、JavaScript 是什么?
    • 二、java 和JavaScript 的关系
    • 三、JavaScript 的组成
    • 四、JS的基本输入输出
  • ---> 单行注释
    • 五、js变量基本概念
    • 六、js基本数据类型
    • 七、js转义字符
    • 八、js类型转换
    • 九、运算符
  • END!


一、JavaScript 是什么?

我们之前在前端里面说过,前端三剑客是构成网页前端必备的三种技术,
HTML CSS JavaScript ,在其中,只有JavaScript是高级编程语言,而其他两种就不是编程语言.

我们可以好比为:

html: 网页的组成/内容的展示 --> 身体
css: 网页的样式/排版,布局美化 --> 衣服/化妆品
JavaScript: 动态效果/网页交互 --> 技能/行为

二、java 和JavaScript 的关系

有些编程基础的同学们可能会问,JavaScript和Java有什么关系吗?
其实答案是:
两者没有直接关系.当年差点合作.没谈成. 当年/现在java都是一门非常火爆的语言。

js的作者为了蹭java的热度. 所以给自己的语言取名为: JavaScript
硬要来说,语法上js更像C语言

我们再JavaScript的学习中 ,要学习:

1.写爬虫时.需要了解网页的组成,用什么标签/选择器

2.写后端数据.前后端交互时.怎么用js来传输信息

Script : 脚本


三、JavaScript 的组成

ECMA Script --> ES --> 简称ES,可以理解为是js的语法版本.最新版本是ES13.不过我们用不了那么新. 教学基于ES6

BOM – Browser object model --> 浏览器对象模型. 通过js来操作浏览器(弹窗/输入框)

DOM – Document object model --> 文档对象模型. 用js来操作网页内容 (网页又称为文档)

js的书写和css类似.也有内部/外部写法

内部写法在html中.写一对script标签.把js内容写里面

	<script> js代码 </script>

外部写法就是创建一个专门的js文件. 通过script里的src属性引入. 写该标签里的js代码无效

	<script src='js文件路径'></script>

js代码最好写在网页内容的最后/body最后代码从上往下执行的.如果位置不对.就可能出现先执行js再出现内容的情况

src除了本地文件外.还可以通过网络路径来导入
https://www.bootcdn.cn/

console.log的内容不是给用户看的.是给程序员自己看的. 所以它是在控制台显示

	1.按下F12 /右键检查 --> 选择控制台/console
	2.快捷键 ctrl + shift + j

四、JS的基本输入输出

首先,我们在学习python的时候,注释写法是

—> 单行注释

多行注释—>“‘’” 注释内容"“”

在JS里:
单行注释: // 注释内容
多行注释: /* 注释内容 */

输出语句:
document.write : 在网页里写一行内容.能够识别标签.字符串需用引号包裹.数字不用
语法:

		document.write(内容)

案例:
在这里插入图片描述

在这里插入图片描述

注意JS的输入可以识别标签,但是要求用''来进行包裹

alert: 弹窗,让网页显示一个弹窗
	语法:
		alert(''内容'')

案例:
在这里插入图片描述

在这里插入图片描述

console.log: 在控制台输出日志. 在控制台输出信息(主要用来调试测试内容)
	语法:
		console.log(内容)

案例:

在这里插入图片描述

在这里插入图片描述

输入语句:

	prompt: 在进入网页时.弹窗输入框.让用户输入. 输入框里可以放提示文本
	语法:
		prompt()
		prompt('提示文本)

案例:
在这里插入图片描述

在这里插入图片描述

可以用输入来赋值. prompt得到的数据为字符串类型

let name = prompt('请输入你的名字')
	alert('欢迎你'+name)

五、js变量基本概念

何为变量:

	一个用来存储数据的容器. 里面的数据可以改变
	把一段常用的数据保存起来,取个名字.方便后续使用

变量名规范:

		1.由数字,字母,下划线_,美元符号$组成 (中文不推荐)
		2.区分大小写Name name
		3.不要用关键字命名  if  for break
		4.见名知意

注意: python变量命名规则里不能用$符号

var/let = 声明符/标识符. 在声明变量前要加上.

let是es6新出的语法. 作用和var类似.不过有一些细节区别.

变量名的使用:
1.声明变量

		let 变量名	//  声明一个空变量,没有赋值
		
		let 变量名 = 变量值 // 声明一个变量,并赋值
	let age
	let name = '仁泽'

2.声明多个变量
	let 变量名=变量值,变量名=变量值
	let home='黑龙江',sex='男'

3.使用变量/输出变量
	输出语句(变量名)
	console.log(变量名)
	document.write(变量名)
	alert(变量名)

4.输出多个变量名
	输出语句(变量名,变量名)
	console.log(变量名,变量名)
	document.write(变量名,变量名)
	alert(变量名,变量名)

5.用输入给变量赋值
	let 变量名 = prompt()
	let age = prompt('请输入你的年龄')

注意:
1.直接写 变量名 = 变量值. 不写let不会报错,但不规范
2.变量如果声明了,没赋值. 它的值为undefined 未定义. 不会报错

六、js基本数据类型

为什么要区分数据类型: 为了更好的管理/区分/使用数据. 所以对数据进行分类

js中查看数据类型  --  typeof

console.log(typeof 数据)
console.log(name, typeof name)

number(数值类型)

主要用于数学计算,数值数字使用.它包含了整数,小数,正数,负数(不分int.float) --> 年龄/身高/金钱
	let 变量名 = 数值
	let age = 27
	let height = 148.5

string(字符串)

主要用来显示文字内容.用一对单' 双" 反` 引号包裹起来的数据 --> 姓名,性别,地址
	let 变量名 = '字符'
	let 变量名 = "字符"

	let name = '谢霆锋'
	console.log(name,typeof name)

	1.引号不能混用,必须单单 双双 反反
		let name = '麒麟"   // 报错

	2.反引号是作为模板字符串输出.让我们更好的输出带变量的数据. 模板字符串只能用反引号.不用单/双
		`字符 ${变量名} 字符`
		console.log(`你好.我叫${name} 我今年${age}岁`)

boolean(布尔类型)

布尔类型主要用于逻辑判断. 判断真/假.  只有两个值true/false
	let 变量名 = true
	let 变量名 = false
	let is_login = true
	console.log(is_login,typeof is_login)

undefined(未定义)

undefined是类型也是值.指的就是未定义.当声明变量未赋值时.它的值和类型都为undefined
	let 变量名
	let test
	console.log(test,typeof test)

null(空)

null和python里的None类似.表示未空,没有东西.输出类型为 空对象object
	let wife = null
	console.log(wifi,typeof wife)

七、js转义字符

在js中.有特别含义的字符.遇到它会特别处理
\n : 换行
\t : 制表符,缩进
\ : 正常输出斜杠
’ : 正常输入引号

js没有原始字符串.不能像python那样在字符串前加个r取消转义

八、js类型转换

在开发/学习过程中. 经常会遇到把一个数据转为其他数据类型再使用的情况.此时就用类型转换
	console.log(1+'1')  // 11 js把+识别为了拼接 1拼接'1'
    console.log(1-'1')  // js把-识别为了减法 1-1位0

隐式类型转换:
	程序的一些类型在运行过程中自动进行转换. 主要是字符串和数值交互时
	+号优先识别为拼接. 其他则为正常数值运算
强制类型转换:
		手动把数据转为指定的数据类型
	Number(数据) -- 把数据转为number类型
		如果数据转换失败.值为NaN. NaN也是number类型.表示的是非数字 Not a Number
			parseInt(数据) -- 把数据转为数值,只取整数
			parseFloat(数据) -- 把数据转为数值,保留小数
			String(数据)  -- 把数据转为string类型
			Boolean(数据) -- 把数据转为boolean类型. 转换后,有值为真,无值为假(0,-0,null,undefined)

九、运算符

运算符 --> 带有特定功能的符号

算数运算符:

	+ - * / %

逻辑运算符:

&&: 与运算 and 有多个条件时,都满足才为真
||: 或运算 or 有多个条件时,满足其一就为真
! : 非运算 not 杠精,取反

关系运算符:

	==  > <  >= <=

赋值运算符:

	= += -= *= /=

例如:
a+=b --> a = a+b
let i = 10
i+=6 --> i = i+6

单目运算符:

	++/--  自增/减1
	++在前,先自增,再赋值;  先+1,再执行
	++在后,先赋值,再自增;  先执行,再+1

	let i = 10
	i++
	++i

在这里插入图片描述

单独写i++/++i没区别.都会+1.但是放到输出语句时.就有区别


END!


更多优质文章点这里

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

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

相关文章

ESCTF赛题WP

ESCTF_reverse题解 逆吧腻吧babypybabypolyreeasy_rere1你是个好孩子完结撒花 Q_W_Q 逆吧腻吧 下载副本后无壳&#xff0c;直接拖入ida分析分析函数逻辑&#xff1a;ida打开如下&#xff1a;提取出全局变量res的数据后&#xff0c;编写异或脚本进行解密&#xff1a; a[0xBF, …

Canine IP-10/CXCL 10 ELISA试剂盒上新

科研用Canine IP-10/CXCL 10 ELISA试剂盒重磅来袭&#xff0c;将在免疫学、癌症研究与神经科学等多个领域助力各位老师们的研究&#xff01; 图1&#xff1a;犬IP-10/CXCL10结构预测&#xff08;图片来源&#xff1a;UniProt&#xff09; C-X-C基序趋化因子(C-X-C motif chemok…

Ubuntu安装教程——Desktop版本(细致入微的操作)

目录 前言 一、安装Ubuntu桌面版操作系统 二、UbuntuLive版安装 1.语言选择 2.键盘布局 3.版本选择 4.网络配置 5.代理配置 6.镜像地址 7.磁盘划分 8.设置用户信息 9.ssh 10.选择软件包 11.安装界面 12.基础配置 12.1root用户 12.2时区 12.3包管理工具 12…

慧天[HTWATER]与主流耦合模拟软件模拟结果都对比

慧天[HTWATER]软件简介 针对城市排水系统基础设施数据管理的需求&#xff0c;以及水文、水力及水质模拟对数据的需求&#xff0c;实现了以数据库方式对相应数据的存储。可以对分流制排水系统及合流制排水系统进行地表水文、管网水力、水质过程的模拟计算。可以对城市低影响开发…

基于springboot+vue+Mysql的校园博客系统

开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;…

数据结构从入门到精通——归并排序

归并排序 前言一、归并排序的基本思想二、归并排序的特性总结三、归并排序的动画展示四、递归实现归并排序的具体代码展示五、非递归实现归并排序 前言 归并排序是一种分治策略的排序算法。它将一个序列分为两个等长&#xff08;几乎等长&#xff09;的子序列&#xff0c;分别…

Linux--Flappy_bird实现

目录 void handler(int sig): mian: void init_curses() int set_timer(int ms_t); 小鸟的操作&#xff1a; void show_pipe()&#xff1a; void create_list() void clear_pipe() void move_pipe(); test_bird.c完整代码&#xff1a; 代码实现&#xff1a; #includ…

动归专题——斐波纳契模型和路径问题

前提 本专题开始&#xff0c;注重整理与动态规划相关的题目&#xff0c;从简单的动归开始切入&#xff0c;慢慢掌握和练习动态规划这一重要的算法思想&#xff0c;部分相对复杂的题目会结合画图和代码分析去解释 一、第N个泰波纳契数列 1.链接 1137. 第 N 个泰波那契数 - 力…

使用EasyYapi插件简化导出yapi接口

安装 &#xff1a; 关键配置&#xff1a; 其中的token在这里拿&#xff1a; 使用&#xff1a; 导出当前Controller下的所有api&#xff1a;使用下图命令可仅导出指定的api: 附&#xff1a;配置部分参考了idea&#xff1a;使用easyYapi插件导出yapi接口

Vue-常用UI组件库

文章目录 一、移动端常用UI组件库二、PC端常用UI组件库三、elementUI基本使用四、element-UI按需引入 一、移动端常用UI组件库 Vant https://youzan.github.io/vant Cube Ul https://didi.github.io/cube-ui Mint UI http://mint-ai.github.io 二、PC端常用UI组件库 Element…

欢迎永创自动化设备2024第七届世界燕窝及天然滋补品博览会

参展企业介绍 深圳市永创自动化设备有限公司&#xff0c;联系客户经理 同微信。公司位于创新之城深圳市宝安区美丽的凤凰山脚下&#xff0c;是杭州永创智能设备股份有限公司深圳分公司&#xff0c;总部位于杭州市高新技术产业园&#xff0c;上交所主板上市。目前拥有科研人员五…

window下迁移SVN仓库到新的windows服务器

一、背景 一个基于 Windows 的 SVN 服务器&#xff0c;用于管理团队的代码库。该 SVN 仓库托管着公司的软件项目&#xff0c;包括多个分支和版本的代码。我们的团队规模约为 50 人&#xff0c;分布在不同的地理位置&#xff0c;他们都依赖 SVN 仓库来进行代码版本控制和协作开…

视频素材网站哪个比较好?8个优质视频素材软件app推荐

在探索那些能够让视频作品焕发生机的宝藏网站时&#xff0c;一个好的短视频素材库不仅能提升作品的视觉效果&#xff0c;还能赋予作品更深的情感层次。为了帮助你更好地寻找到这些珍贵的资源&#xff0c;以下是一系列精选的视频素材网站&#xff0c;全面支持你的视频创作需求。…

眼观百遍,不如手敲一遍

眼观百遍&#xff0c;不如手敲一遍 Repetitive Viewing Cannot Surpass Hands-on Typing 在现代教育体系中&#xff0c;编程已成为一项基础而关键的技能。伴随着各种便捷的工具和在线资源的普及&#xff0c;获取并复制代码变得前所未有地容易。然而&#xff0c;在这种趋势下&am…

canvas画图历史记录展示

提示&#xff1a;canvas画图历史记录展示 文章目录 前言一、画图历史记录展示总结 前言 一、画图历史记录展示 test.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" con…

RHCE:请给openlab搭建web

1.关闭所有安全软件已经防火墙 2.安装所需软件 3.在Windows 文件中进行DNS映射 C:\Windows\System32\drivers\etc\hosts 文件进 行DNS 映射 4.创建www.openlab.com网站 5.创建教学资料子网站 6.创建学生信息子网站 进行验证 7.创建缴费子网站

荟萃分析R Meta-Analyses 1

参考&#xff1a;Harrer, M.、Cuijpers, P.、Furukawa, TA 和 Ebert, DD (2021)。 使用 R 进行荟萃分析&#xff1a;实践指南。佛罗里达州博卡拉顿和伦敦&#xff1a;Chapman & Hall/CRC Press。 ISBN 978-0-367-61007-4。 1.1什么是荟萃分析&#xff1f; 它的创始人之一 G…

Airflow【部署 01】调度和监控工作流工具Airflow官网Quick Start实操(一篇学会部署Airflow)

Airflow官网Quick Start实操 1.环境变量设置2.使用约束文件进行安装3.启动单机版3.1 快速启动3.2 分步骤启动3.3 启动后3.4 服务启动停止脚本 4.访问4.1 登录4.2 测试 来自官网的介绍&#xff1a; https://airflow.apache.org/ Airflow™是一个由社区创建的平台&#xff0c;以…

网络爬虫基本知识

什么是网络爬虫 网络爬虫&#xff08;Web crawler&#xff09;是一种自动化程序&#xff0c;用于在互联网上收集信息。它可以通过扫描和解析网页的超链接&#xff0c;自动访问网页并抓取所需的数据。网络爬虫常用于搜索引擎和数据采集工具中。 作用 通过有效的爬虫手段批量采…