当前位置: 首页 > news >正文

前端学习笔记|JavaScript基础

JS基础

数据类型

基于动力节点视频。
Number、String、Boolean、object

强制转换

Number 强转,boolean强转(undefined、null、NaN都是转成false),String强转

myAge = Number("123445");
Boolean(0);
String(123);

parseInt、parseFloat
遇到非数字(包括空格)为止,功能更强大。

var num1=parseInt("123A123")
var num2=parseFloat("123.123a")

运算符

  1. 数学运算±*/%,除法时整数除以整数可以得到小数
  2. 自增自减
  3. 赋值运算符=,和运算符组合+=等
  4. 比较运算符,==比较 值,如"5"==5,===全等于,比较值和类型
  5. 逻辑运算符,&&、||、!
  6. 三目运算符 条件表达式?满足条件执行:不满足条件执行
  7. +,+=可以实现字符串的拼接,字符串可以直接拼接数字

隐式转换

  1. number+基本数据类型将数据转换成number类型,数字和NaN或undefined相加结果为NaN
  2. string和number比较,string先转换成number
  3. NaN和其他任何类型比较都是false,包括NaN==NaN
  4. undefined==null为true

函数

function 函数名(逗号间隔的参数列表){}//函数表达式
var res = function (m, n) {return m * n;
}
res(2,2)

arguments对象

封装实参的对象

function add(a, b) {console.log(arguments);//实参个数console.log(arguments.length);//函数引用console.log(arguments.callee);//通过索引访问实参数据console.log(arguments[0] + " " + arguments[1] + arguments[2]);arguments[0] = 5;
}
add(1, 2, 4);

变量的作用范围

函数内部声明的变量只能在函数内部访问,在函数外声明的变量可以访问

内置对象

内置对象

数组:数组是特殊类型的对象。正因如此,可以在相同数组中存放不同类型的变量。可以在数组保存对象。您可以在数组中保存函数。你甚至可以在数组中保存数组:

myArray[0] = Date.now;
myArray[1] = myFunction;
myArray[2] = myCars;//数组遍历元素做操作
numbers.forEach(myFunction);function myFunction(item) {sum += item;console.log(sum);
}

Math:round四舍五入,ceil向上取整,abs绝对值

正则表达式

^开始,$结束
[]某个范围的单个字符
\w:单词字符,\d:数字,{m,n}至少m个,最多n个,{m,}至少m个

警告框、询问框、确认框

alert("warning");
var key = prompt("please input key");
var flag = confirm("Confirm the modification?确认修改吗?");

定时器

//定时任务,时间单位为毫秒
setInterval(myPrint, 1000);//一次性定时器
setTimeout(myPrint, 5000);function myPrint() {console.log("bang!");
}

自定义对象

var obj = new Object();
obj.name = "spike";
//注意访问对象属性时要加上this
obj.line = function () {console.log("bang" + this.name);
}
obj.line();定义对象的方法二,属性后用冒号:
var obj = {name: 'spike',age: 10,show: function () {console.log(this.name + this.age);}}

DOM

DOM文档

  1. document获取元素
//id//var ele = document.getElementById("fathers");//tag// var ele = document.getElementsByTagName("p");//class//var ele = document.getElementsByClassName("a");//name属性var ele = document.getElementsByName("bebop");
  1. element操作属性
    ELement对象
    注意:innerHTML连同标签一起获取,innerText只获取文本内容
//获取属性值
//ele.getAttribute("id");//设置属性值
// ele.setAttribute("name", "time");

操作父子节点

<div id="parent"><button id="child1">b1</button><button id="child2">b2</button></div> <script>
var ele = document.getElementById("parent");var children = ele.children;var ele = document.getElementById("child1");var pa = ele.parentNode;
//通过pa.nodeName知道节点类型为'div'</script>

插入和删除节点

//创建节点(元素节点等)并附加到其他元素上var p = document.createElement("p");p.innerText = "作为最后一个子元素添加到元素";
//appendChild() 方法将节点(元素)作为最后一个子元素添加到元素
//document.body.appendChild(p);document.getElementById("parent").appendChild(p);p.innerText = "在现有子节点之前插入子节点";  var ele = document.getElementById("parent");var title = document.getElementById("child1");       
//insertBefore() 方法在现有子节点之前插入子节点。ele.insertBefore(p, title)//removeChild() 方法删除元素的子节点。
// ele.removeChild(title);title.parentNode.removeChild(title);

dom表单

//获取或设置表单的value// var ele = document.getElementById("inputtext");// ele.value = "ZHANGSAN";//获取或设置单选框选中状态// var ele = document.getElementById("female");// ele.checked = true;//下拉框设置选中var ele = document.getElementById("fe");//ele.selected = true;//设置禁用效果ele.disabled = true;

事件

//单击事件
var ele = document.getElementById("btn");ele.onclick = function () {document.getElementById("inputpwd").value = "123455";}//焦点事件//onfocus 事件在元素获得焦点时发生。onfocus 事件最常与 < input >、<select> 和 <a> 一起使用。var ele = document.getElementById("textinput");ele.onfocus = function () {document.getElementById("hint1").innerHTML = "6-8位";}//onblur 事件发生在对象失去焦点时。//onblur 事件最常与表单验证代码一起使用(例如,当用户离开表单字段时)ele.onblur = function () {var t = /^[0-9]{6,8}$/;var flag = t.test(ele.value);if (flag) {document.getElementById("hint1").innerHTML = "succeed";} else {document.getElementById("hint1").innerHTML = "not accepted";}}//改变事件
//	当form元素的内容、选择的内容或选中的状态发生改变时,发生此事件var ele = document.getElementsByName("sex");ele[0].onchange = function () {console.log(ele[0].value);console.log(this.value);}//鼠标移入移出事件
//onmouseover 事件发生在鼠标指针移动到元素或它的子元素上时。var ele = document.getElementById("pp");ele.onmouseover = function () {ele.setAttribute("class", "overBlue");}ele.onmouseout = function () {ele.setAttribute("class", "blue");}//页面加载事件
window.onload = function () {//初始化操作}

bom操作

//location包含有关当前 URL 的信息。
//Location 对象是窗口对象的属性。
//href设置或返回整个 URL。
setTimeout(function () {location.href = "https://music.douban.com/subject/25710168/";}, 3000);//加载历史列表中的上一个 URL(页面)。
setTimeout(function () {history.back();}, 3000);

es6新语法

let

  1. let声明的变量不能重复声明
  2. let有代码块的概念,如大括号里面

const

声明(对象,数组的引用)为不能更改的常量

构造函数

 function person(name) {this.name = name;this.run = function () {console.log("running");}}var p = new person("spike");p.run();

原型对象

let stu = {name: "素子"}//原型对象stu.__proto__.jump = function () {console.log("ghost in the shell");}stu.jump();

原型继承

function student(score) {this.score = score;}student.prototype = new person("faye");var stu = new student(100);console.log(stu.score + " " + stu.name);stu.run();

相关文章:

前端学习笔记|JavaScript基础

JS基础 数据类型 基于动力节点视频。 Number、String、Boolean、object 强制转换 Number 强转,boolean强转(undefined、null、NaN都是转成false)&#xff0c;String强转 myAge Number("123445"); Boolean(0); String(123);parseInt、parseFloat 遇到非数字&…...

springcloud五大组件:Eureka:注册中心、Zuul:服务网关、Ribbon:负载均衡、Feign:服务调用、Hystix:熔断器

你提到的这些组件都是Spring Cloud生态系统中非常关键和常用的组件。但是&#xff0c;关于这些组件的命名&#xff0c;有一点需要更正&#xff1a; Eureka 应该是 Eureka 或者 Eureka Server&#xff1a;Eureka是Netflix开源的一个服务发现组件&#xff0c;它本身是一个基于RE…...

Python的Selenium库中的模块、类和异常的汇总

这些是 Selenium Python 库中的模块、类和异常&#xff0c;用于实现自动化 Web 浏览器测试和网页操作。以下是它们的简单解释&#xff1a;Python Module Index — Selenium 4.18.1 documentation 1. selenium.common.exceptions&#xff1a;包含了 Selenium 中可能出现的异常。…...

智慧交通:构建智慧城市的重要一环

随着信息技术的飞速发展&#xff0c;智慧城市已成为现代城市发展的重要方向。作为智慧城市的重要组成部分&#xff0c;智慧交通以其高效、便捷、环保的特性&#xff0c;成为推动城市现代化进程的关键力量。本文将从智慧交通的概念、发展现状、面临挑战以及未来趋势等方面&#…...

BFS 求解 最小高度树 【妙用】

310. 最小高度树 链接 &#xff1a;题目链接 思路 常规解法是树形dp&#xff0c;两个dfs解决&#xff0c;这里不再赘述新颖解法bfs&#xff0c;而且实现更加简单&#xff0c;大体思路就是每次都从叶子节点一步步往中心爬&#xff0c;最后一批留在队列中的节点就为本题意的答案…...

【机器学习300问】36、什么是集成学习?

一、什么是集成学习&#xff1f; &#xff08;1&#xff09;它的出现是为了解决什么问题&#xff1f; 提高准确性&#xff1a;单个模型可能对某些数据敏感或者有概念偏见&#xff0c;而集成多个模型可以提高预测的准确性。让模型变稳定&#xff1a;一些模型&#xff0c;如决策…...

Stargo 管理部署 Starrocks 集群

配置主机间 ssh 互信 ssh-copy-id hadoop02 ssh-copy-id hadoop03配置系统参数 ############################ Swap检查 ############################ echo 0 | sudo tee /proc/sys/vm/swappiness########################### 内核参数检查 ########################## echo…...

CI/CD实战-git工具使用 1

版本控制系统 本地版本控制系统 集中化的版本控制系统 分布式版本控制系统 git官网文档&#xff1a;https://git-scm.com/book/zh/v2 Git 有三种状态&#xff1a;已提交&#xff08;committed&#xff09;、已修改&#xff08;modified&#xff09; 和 已暂存&#xff08;sta…...

Linux中udp服务端,客户端的开发

UDP通信相关函数&#xff1a; ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags, struct sockaddr *src_addr, socklen_t *addrlen); 函数说明&#xff1a;接收信息 参数说明&#xff1a;sockfd:套接字buf:要接收的缓冲区len:缓冲区…...

1.python安装

1.检查是否已经安装python 打开cmd 输入 python --version查看是否有返回版本,没有返回则环境变量未设置好,或者未安装 2.下载安转python https://www.python.org/downloads/windows/ 勾选配置环境变量路径 安装成功...

【Flink SQL】Flink SQL 基础概念(三):SQL 动态表 连续查询

《Flink SQL 基础概念》系列&#xff0c;共包含以下 5 篇文章&#xff1a; Flink SQL 基础概念&#xff08;一&#xff09;&#xff1a;SQL & Table 运行环境、基本概念及常用 APIFlink SQL 基础概念&#xff08;二&#xff09;&#xff1a;数据类型Flink SQL 基础概念&am…...

科研绘图一:箱线图(添加贝赛尔曲线)

R语言绘图系列—箱线图贝赛尔曲线 &#xff08;一&#xff09;: 科研绘图一&#xff1a;箱线图&#xff08;添加贝赛尔曲线&#xff09; 文章目录 R语言绘图系列---箱线图贝赛尔曲线&#xff08;一&#xff09;: 科研绘图一&#xff1a;箱线图&#xff08;添加贝赛尔曲线&…...

最佳实践:Swagger 自动生成 Api 文档

自动生成 API 文档的好处不言而喻&#xff0c;它可以提供给你的团队或者外部协作者&#xff0c;方便 API 使用者准确地调用到你的 API。为了降低手动编写文档带来的错误&#xff0c;很多 API 开发者会偏向于寻找一些好的方法来自动生成 API 文档。本文将会介绍一些常用的文档生…...

搬砖。。。

0搬砖 - 蓝桥云课 (lanqiao.cn) 问题描述 这天&#xff0c;小明在搬砖 他一共有n块砖他发现第砖的重量为w价值为i。他突然想从这些砖中选一些出来从下到上堆成一座塔,并且对于塔中的每一块砖来说&#xff0c;它上面所有砖的重量和不能超过它自身的价值。 他想知道这样堆成的塔的…...

【论文笔记合集】Transformers in Time Series A Survey综述总结

本文作者&#xff1a; slience_me 文章目录 Transformers in Time Series A Survey综述总结1 Introduction2 Transformer的组成Preliminaries of the Transformer2.1 Vanilla Transformer2.2 输入编码和位置编码 Input Encoding and Positional Encoding绝对位置编码 Absolute …...

HarmonyOS(二十)——管理应用拥有的状态之LocalStorage(页面级UI状态存储)

LocalStorage是页面级的UI状态存储&#xff0c;通过Entry装饰器接收的参数可以在页面内共享同一个LocalStorage实例。LocalStorage也可以在UIAbility实例内&#xff0c;在页面间共享状态。 本文仅介绍LocalStorage使用场景和相关的装饰器&#xff1a;LocalStorageProp和LocalS…...

Linux系统安全②SNAT与DNAT

目录 一.SNAT 1.定义 2.实验环境准备 &#xff08;1&#xff09;三台服务器&#xff1a;PC1客户端、PC2网关、PC3服务端。 &#xff08;2&#xff09;硬件要求&#xff1a;PC1和PC3均只需一块网卡、PC2需要2块网卡 &#xff08;3&#xff09;网络模式要求&#xff1a;PC1…...

【运维】StarRocks数据迁移到新集群(针对于集群互通、不互通的情况)

文章目录 一. 迁移整体思路1. 对于新旧集群互通的情况2. 对于新旧集群不互通的情况二、迁移过程(两个集群互通的情况)1. 备份过程1.1. 通过mysqlclient与starrocks进行关联1.2. 创建仓库与minio建立联系1.3. 备份数据到minio2. 迁移过程2.1. 通过mysqlclient与starrocks进行关…...

facebook个人广告账户充值方式有哪些?看这一篇就够了

可以使用虚拟信用卡进行充值&#xff0c;也可以使用虚拟卡绑定paypal进行充值 点击获取虚拟卡 开卡步骤如下图 Facebook如何添加支付方式 1.前往支付设置。 2.在支付方式版块&#xff0c;点击添加支付方式。 3.选择要添加的支付方式&#xff0c;填写相关信息&#xff0c;然…...

蓝桥杯算法练习系统—作物杂交【第十一届】【省赛】【C组】

问题描述 作物杂交是作物栽培中重要的一步。已知有 N 种作物(编号 1 至 N )&#xff0c;第 i 种作物从播种到成熟的时间为 Ti。 作物之间两两可以进行杂交&#xff0c;杂交时间取两种中时间较长的一方。如作物 A 种植时间为 5 天&#xff0c;作物 B 种植时间为 7 天&#xff0…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

Java多线程实现之Callable接口深度解析

Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

EtherNet/IP转DeviceNet协议网关详解

一&#xff0c;设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络&#xff0c;本网关连接到EtherNet/IP总线中做为从站使用&#xff0c;连接到DeviceNet总线中做为从站使用。 在自动…...

华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建

华为云FlexusDeepSeek征文&#xff5c;DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色&#xff0c;华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型&#xff0c;能助力我们轻松驾驭 DeepSeek-V3/R1&#xff0c;本文中将分享如何…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

Rapidio门铃消息FIFO溢出机制

关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系&#xff0c;以下是深入解析&#xff1a; 门铃FIFO溢出的本质 在RapidIO系统中&#xff0c;门铃消息FIFO是硬件控制器内部的缓冲区&#xff0c;用于临时存储接收到的门铃消息&#xff08;Doorbell Message&#xff09;。…...

C# 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...