JavaScript:js基础1

JavaScript

一门跨平台,面向对象的脚本语言,来控制网页行文使网页可交互

JavaScript引入方式:

<script>alert("Hello JS")
</script>

js语句必须在

<script>

标签之间,在html文档中,可以在任意地方,放置任意数量的script

一般会把脚本置于

<body>

元素的底部,可以改善显示速度

外部脚本:

将JS代码定义在外部JS文件中,然后引入HTML页面

外部JS文件中只包含js代码,不包含script标签

script标签不能自闭合

<script src="js文档">

JS语法

区分大小写
输出语句
window.alert("Hello JS");
//浏览器弹出警告框
document.write("Hello JS");
//写入HTML,在浏览器展示
console.log("Hello JS")
//写入浏览器控制台

JS变量

用var关键字(variable的缩写)来声明变量

一门弱类型语言,可以存放不同类型的值

var关键字声明的变量全局可用,且可以重复声明

var a = 20;
a = "张三";

变量名需要遵循如下规则:

组成字符可以是任何字母,数字,下划线(_)或者是美元符号($)

数字不能开头

建议使用驼峰开头

ECMAScript6

新增let关键字定义变量

用法类似于var,但声明的变量只在let关键字的代码块内有效

且不允许重复声明

新增const关键字

用来声明一个只读常量,一旦声明,常量的值不能改变

数据类型

JavaScript中分为

原始类型和引用类型

原始类型:

number:数字(整数,小数,NAN(not a number))
String:字符串,单双引号都可以
boolean:布尔.
null:对象为空
undefined:当声明的变量未初始化时,该变量的默认值是undefined

typeof运算符可以获取数据类型

运算符

基本与java一致

==比较值

===比较值和类型(全等)

类型转换->数字

String:字符串字面值转为数字,如果字面值不是数字就为NaN

注:数字+字符的形式可以转换,但字符加数字或数字夹杂字符不能转换

var s = parseInt("123");

Boolean:true->1,false->0

var n = Number(true);

类型转换->boolean

Number:0和NaN为false,其他均转为true

String:空字符串为false,其他均为true

Null和undefined:均转为false

流程控制语句

if...else
if...else..
switch
for
while
do...while

函数

被设计为执行特定任务的代码块

function functionName(参数 1,参数 2....){//代码
}

形参无需类型,因为javaScript是弱类型语言

返回值也不需要定义类型,可以在函数内部直接使用return返回

函数调用
function add(a,b){return a+b;
}
var result = add(10,20);
alert(result);
var functionName = function(参数 1,参数 2....){//代码
}
var add = function(a,b){return a+b;
}
var result = add(10,20);
alert(result);
var sum = (a,b)=>{return a+b;}

箭头函数省略方式类似lambda表达式

函数调用可以传递任意个数的参数

JS对象

js提供的对象分为三类

xxxxxxxxxx onclick//鼠标单击事件onblur//元素失去焦点onfocus//元素获得焦点onload//某个页面或者图像被完全加载onsubmit//当表单被提交时触发onkeydown//当某个键被按下onmouseover//鼠标被移到某个元素之上onmouseout//鼠标从某个元素移开js

基本对象

Array
Boolean
Date
Math
Number
String
RegExp
Global

Array对象

用于定义数组

var 变量名 = new Array(元素列表);
eg:var arr = new Array(1,2,3);var 变量名 = [元素列表];
eg:var arr = [1,2,3];arr[1] = 1;//没有赋值默认为undefined
特点:

数组长度可变,可以存储任意类型的数据

Array对象属性:
constructor
//返回对创建此对象的数组函数的引用
length
//设置或返回数组中元素的个数
prototype
//向对象中添加属性和方法
Array对象方法:
push()
//添加新元素到数组末尾,返回新的长度
arr.push(1);
splice()
//从数组中添加或删除元素
arr.splice(0,1)
//从0索引开始删除一个元素
sort()
//对数组元素进行排序
arr1.sort(排序函数)
indexOf()
//在数组中搜索元素并返回其位置
arr1.indexOf(20)
//查找数组中元素为20的索引位置
reverse()
//反转数组中元素顺序
arr.reverse()
forEach()
//遍历

String对象

创建String对象的方式有两种

1,

var 变量名 = new String(s);

2,

var 变量名 = "数组"
String对象的属性

length:字符串的长度

方法:
charAt()
//返回在指定位置的字符
indexOf
//检索字符串
trim()
//去除字符串两边的空格
substring
//提取字符串中两个指定的索引号之间的字符

BOM对象

window
Navigator
Screen
History
Location

Dom对象

Document
Anchor
Area

JavaScript中自定义对象

var 对象名称={属性名:属性值,函数名:function(形参列表){}
};

function关键字可以省略

调用时直接使用对象名.属性名和对象名.方法名调用即可

js对象可以嵌套,即js对象中的属性可以是js对象

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

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

相关文章

Windows SMBGhost CVE-2020-0796 Elevate Privileges

SMBGhost CVE-2020-0796 Microsoft Windows 10 (1903/1909) - ‘SMBGhost’ SMB3.1.1 ‘SMB2_COMPRESSION_CAPABILITIES’ Local Privilege Escalation https://www.exploit-db.com/exploits/48267 Github https://github.com/danigargu/CVE-2020-0796 修改载荷[可选] 生成 c# …

【ARMv9 DSU-120 系列 -- Mapping for address target groups to CHI bus master ports】

文章目录 Mapping for address target groups to CHI bus master ports映射决定过程示例CHI id bit settingMapping for address target groups to CHI bus master ports 在DSU-120(DynamIQ™共享单元-120)中,地址目标组与总线主端口之间的映射关系是通过在复位时决定哪些总…

LLaMA Factory单机微调的实战教程

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

23年HVV微b蓝初面经

1. 自我介绍 从项目经验 工作经历 个人技术 上面三个方面说一些就行 2. 平时学习的方式是什么&#xff0c;有没有系统学习过安全&#xff0c; web 、内网学的怎么样 学的 b 站系统的课程&#xff0c;加了很多学习圈子、论坛&#xff0c;内网只涉猎了一点&#xff0c;学习的不…

【JAVA基础之IO】字节流、字符流以及乱码问题

&#x1f525;作者主页&#xff1a;小林同学的学习笔录 &#x1f525;mysql专栏&#xff1a;小林同学的专栏 目录 1. IO概述 1.1 什么是IO 1.2 IO的分类 1.3 字节和字符流的顶级父类 2. 字节流 2.1 一切皆为字节 2.2 字节输出流【OutputStream】 2.3 FileOutputStream类…

【GUI软件】小红书关键词搜索结果批量采集

一、背景介绍 1.1 爬取目标 用python开发的爬虫采集软件&#xff0c;可自动按关键词抓取小红书笔记。 软件界面截图&#xff1a; 爬取结果截图&#xff1a; 结果截图1: 结果截图2: 结果截图3: 以上。 1.2 演示视频 软件运行演示&#xff1a; 【软件演示】小红书搜…

零信任网络安全技术雷达图3.0正式发布

伴随零信任理念的发展和实施&#xff0c;零信任技术体系的演进变革也日趋完善。易安联力图通过持续更新并优化零信任雷达图&#xff0c;以反映零信任技术在应对新型网络安全挑战中的创新和发展&#xff0c;为企业和组织提供前瞻性的技术建议&#xff0c;助力其构建更为强大和灵…

11.泛型

文章目录 1 泛型概念2. 自定义泛型结构3 泛型方法4 泛型在继承上的体现5 通配符的使用 1 泛型概念 所谓泛型就是用标识符标识不确定的类型&#xff0c;详细说就是&#xff1a;定义类或接口时用标识符表示类中某个属性的类型或者是某个方法的返回值及参数类型。泛型将在使用时&a…

探索React Router:实现动态二级路由

我有一个路由配置的二维数组&#xff0c;想根据这个数组结合路由组件来动态生成路由&#xff0c;应该怎么样实现。在 React Router 6 中渲染二级路由的方式跟 React Router 65相比有一些变化,但核心思路仍然是利用 Route 组件和路由嵌套的方式。下面是具体的步骤: 定义路由数组…

小程序视频如何下载到手机#下载高手

在本文中&#xff0c;我将向您介绍一个工具:下载高手&#xff0c;帮助您轻松下载小程序视频&#xff0c;并将其保存到您的手机中。无论是学习教育类的小程序视频&#xff0c;还是图片素材类的小程序&#xff0c;这些方法都适用于各种类型的小程序。 工具我已经打包好了&#x…

蓝桥杯 — — 完全日期

完全日期 友情链接&#xff1a;完全日期 题目&#xff1a; 思路&#xff1a; 直接从20010101枚举到20211231&#xff0c;然后再判断每一个数是否是一个合法的日期&#xff0c;如果这个日期是合法的&#xff0c;接着判断这个日期的每一个位置上的数字之和是否是一个完全平方数…

Qt——设置字体样式

在Qt中&#xff0c;你可以通过设置字体颜色来将文本显示为灰色。你可以使用QPalette对象为特定的控件或整个应用程序的控件设置颜色。以下是一个如何将按钮字体设置为灰色的示例&#xff1a; #include <QApplication> #include <QWidget> #include <QPushButto…

GPT-SoVITS声音克隆训练和推理(新手教程,附整合包)

环境: Win10 专业版 GPT-SoVITS-0421 整合包 问题描述: GPT-SoVITS声音克隆如何训练和推理教程 解决方案: Zero-shot TTS: Input a 5-second vocal sample and experience instant text-to-speech conversion.零样本 TTS:输入 5 秒的人声样本并体验即时文本到语音转换…

基于java的CRM客户关系管理系统的设计与实现

本科毕业设计(论文) 题 目&#xff1a; 基于java的CRM客户关系管理系统的设计与实现 专题题目&#xff1a; 说 明 请按以下顺序编排&#xff1a; 封面任务书开题报告中外文摘要及关键词目录正文附录&…

《深入浅出.NET框架设计与实现》笔记6.1——ASP.NET Core应用程序多种运行模式之一——自宿主(Self-Hosting)

ASP.NET Core应用程序可以在多种运行模式下运行&#xff0c;包括自宿主&#xff08;Self-Hosting&#xff09;、IIS服务承载、桌面应用程序、服务承载。 因此选择和时的模式很重要。 自宿主&#xff08;Self-Hosting&#xff09; 自宿主是指 ASP.NET Core 应用程序独立运行&a…

算法学习笔记Day9——动态规划初探

一、介绍 本文解决几个问题&#xff1a;动态规划是什么&#xff1f;解决动态规划问题有什么技巧&#xff1f;如何学习动态规划&#xff1f; 1. 动态规划问题的一般形式就是求最值。动态规划其实是运筹学的一种最优化方法&#xff0c;只不过在计算机问题上应用比较多&#xff…

2024/4/24总结

js进阶 作用域 作用域分为全局作用域和局部作用域 局部作用域 分为块级作用域&#xff08; 就是使用 {} 包裹起来的代码称为代码块 &#xff09;和函数作用域&#xff08; 顾名思义就是函数包裹的部分 &#xff09; let 和 const 声明的常量会产生块级作用域 var不会产生…

maya显示隐藏 动画长度

目录 大纲视图&#xff0c;选择节点&#xff0c;H控制显示与隐藏 使用Viewport显示/隐藏 脚本控制显示/隐藏 获取动画长度python脚本 大纲视图&#xff0c;选择节点&#xff0c;H控制显示与隐藏 使用Viewport显示/隐藏 这是最直观的方法&#xff0c;适合临时隐藏Mesh以便专…

矩阵连乘算法

矩阵连乘&#xff1a; #include<iostream> #define inf 0x7fffffff using namespace std; int a[256] { 0 };//存储矩阵的行和列 int m[256][256] { 0 };//存储i到j的最少计算次数 int s[256][256] { 0 };//存储i到j的中转站k void m_print(int i, int j) {if (i …

Kubectl常见排查pod问题命令

一.查看命名空间pod及其日志 #查看命名空间pod kubectl get pods -n <命名空间名称> #该命令不加-n命名空间名称&#xff0c;默认是查看default命名空间的pod#查看对应pod的日志kubectl logs -f <pod-name> -n <namespace>#同样的如果查看的是default命名空…