前端学习JavaScript基础语法
JavaScript组成ECMAScript(简称 ESjavascript语法DOM:页面文档对象模型对页面中的元素进行操作BOM:浏览器对象模型对浏览器窗口进行操作书写形式行内式inputtypebuttonvalue这是一个按钮onclickalert(这是一个按钮)内嵌式scriptalert(这是一个按钮);/script外部式scriptsrchellp.js/script引入js文件定义变量scriptvarname小明;console.log(Hello, name!);// 输出: Hello, 小明!letage18;console.log(年龄: age);// 输出: 年龄: 18/scriptlet比var出现的晚意味着避免了var这块定义变量的时候的一些缺陷如果使用let定义变量此时变量生命周期作用域基本和java类似的JS中定义一个变量的时候不需要对找个变量指定类型对于数字只有一个数值类型什么是强类型变量弱类型变量强类型变量意味着不同的类型之间进行赋值的时候需要进行一定的手段强制类型转化弱类型变量在不同类型之间变量进行赋值的时候可以直接赋值a 1 b b b a console.log(b) 打印1什么是动态类型变量什么是静态类型变量动态类型意味着代码在执行过程中变量类型可以随时发生变化静态类型意味着变量定义的时候是什么类型在运行过程中就是什么类型a 1 console.log(typeof a) // 输出: number b b a b console.log(typeof a) // 输出: string基础数据类型number 数字不分整数和小数boolean: true 真false 假string 字符串类型undefined 只有唯一的值 undefined 表示未定义的值null 只有唯一的值 null 表示空值数字类型八进制0开头例如07十六进制0x开头二进制0b开头特殊的数字值infinity:无穷大大于任何数字表示数字已经超过了JS能表示的范围-infinity:负无穷大小于任何数字表示数字已经超过了JS能表示的范围NaN:表示当前的结果不是一个数字console.log(10/0)infinity console.log(-10/0)-infinity console.log(hhhhh-1)NaNstring类型双引号和单引号都能使用都是string类型双引号可以加单引号反过来一样求字符串长度letagggalert(a.length)拼接用 console.log(100100)数字 console.log(100100)字符串100100boolean类型boolean参与运算时当作1和0来看待undefined 未定义的类型leta console.log(a)underined console.log(a20)underined20 console.log(a1)NaN运算符 比较相等比较内容会进行隐式类型转化 比较相等比较内容数据类型不会进行隐式类型转化数组创建数组vararrnewArray();vararr[];vararr2[1,2,haha,false];数据类型可以不一样访问用下标注意不要给数组直接赋值此时数组中的所有元素都没了新增数组元素vararr[];arr[2]10console.log(arr)push追加vararr[1,2,3,4,5,6]varnewArr[]for(vari0;iarr.length;i){if(arr[i]%2!0){newArr.push(arr[i]);}}删除newArr.splice(0,1);从0下标开始删除1个函数function函数名形参列表{函数体return返回值}函数表达式letresult(function(){leta0;for(vari0;i5;i){ai;}returna;})();console.log(result);作用域letnum10;functiontest01(){letnum100;console.log(num);}functiontest02(){letnum200;console.log(num);}console.log(num);test01();test02();for(i1;i100;i){}console.log(i);//JS中如果定义一个变量不使用let,var此时这个变量就会变成一个全局变量作用域链letnum10;functiontest01(){letnum100;console.log(num);functiontest02(){letnum200;console.log(num);}test02();}test01();//200变量局部优先再找全局对象使用字面量创建对象leta{}letstudent{name:cyy,height:123,weight:34kg,sayHello:function(){console.log(hello)}}console.log(student.name);console.log(student[name]);student.sayHello();使用 new Object创建对象letstudentnewObject()student.namecyystudent.height180student[weight]80student.sayHellofunction(){console.log(say hello)}console.log(student.name)student.sayHello()使用构造函数创建对象functionPeople(name,height,weight){this.namenamethis.heightheightthis.weightweightthis.Sayfunction(){console.log(name say hello)}}letcyynewPeople(cyy,175,70)console.log(cyy)cyy.Say()ES6,class和构造classPeople{constructor(name,height,weight){//构造函数this.namenamethis.heightheightthis.weightweight}Say(){console.log(this.name正在说)}}letcyynewPeople(cyy,111,22)console.log(cyy)cyy.Say();static关键字classPeople{constructor(name,height,weight){//构造函数this.namenamethis.heightheightthis.weightweight}Say(){console.log(this.name正在说)}staticotherother//属于类}letcyynewPeople(cyy,111,22)console.log(cyy)cyy.Say();console.log(People.other)继承classStudentextendsPeople{constructor(name,weight,height,number){super(name,height,weight)this.numbernumber}Say(){alert(this.name)}}letstudentnewStudent(zhang,190,80,2)console.log(student)student.Say()

相关新闻

3Sum — 暴力 O(n³) 到双指针 O(n²),AI 是怎么把三层循环砍成两层的?

3Sum — 暴力 O(n³) 到双指针 O(n²),AI 是怎么把三层循环砍成两层的?

读完本文你将了解: 3Sum 的暴力→优化→最优完整演进 | 双指针模式为什么是「降复杂度」的本质 | Uber 拼车配对的真实场景📋 题目 原题: 给你一个整数数组 nums,返回所有和为 0 的不重复三元组 [nums[i], nums[j], nums[k]]&…

2026/8/25 16:28:21 阅读更多 →
基于微信小程序的美食画像平台设计与实现

基于微信小程序的美食画像平台设计与实现

一、课题研究背景与意义 (一)研究背景 随着移动互联网与本地生活服务行业的高速发展,美食消费、美食探店、饮食分享已成为大众日常生活的重要组成部分。当前美团、大众点评等主流美食平台以商家入驻、榜单推荐、团购消费为核心,服…

2026/8/24 15:21:40 阅读更多 →
职场英语学习计划Day040

职场英语学习计划Day040

🌟计划1:📅学习时间:2026.8.7 周五学习内容:English at Work Episode 39: A step too far Disciplining a member of staff▶ new recruit 新员工▶ make life difficult for sb. 给某人制造困难/找麻烦/出难题&#x…

2026/8/25 16:50:33 阅读更多 →

最新新闻

Claude Extended Thinking预算调优指南:从原理到实战场景化配置

Claude Extended Thinking预算调优指南:从原理到实战场景化配置

1. 项目概述:理解“思考预算”的核心价值最近在深度使用 Claude 的 Extended Thinking 功能进行代码审查和复杂问题分析时,我遇到了一个几乎所有深度用户都会纠结的问题:thinking budget 到底该设置多大?这个参数不像温度&#xf…

2026/8/26 2:45:48 阅读更多 →
SparkSession:统一入口、核心架构与生产环境实战指南

SparkSession:统一入口、核心架构与生产环境实战指南

1. SparkSession:现代Spark应用的统一入口如果你是从Spark 1.x时代过来的老用户,肯定对SparkContext、SQLContext、HiveContext这些名字记忆犹新。那时候,为了写一个同时涉及RDD、DataFrame和SQL查询的应用,你不得不在代码里同时初…

2026/8/26 2:45:48 阅读更多 →
LoRa点对点通信实战:从原理、参数配置到故障排查

LoRa点对点通信实战:从原理、参数配置到故障排查

1. 项目概述1.1 为什么突然想写LoRa我接触LoRa这个技术已经两年多了。最开始是在一个园区物联网项目里,客户要求布一批环境监测节点,覆盖范围大概一平方公里,节点用电池供电,要求至少跑半年以上。当时团队里有人提议用Wi-Fi&#…

2026/8/26 2:45:48 阅读更多 →
Cursor AI编程实战:8个技巧精准控制Token消耗,提升开发效率

Cursor AI编程实战:8个技巧精准控制Token消耗,提升开发效率

1. 项目概述:从“烧钱”到“精打细算”的AI编程之路作为一名深度依赖AI辅助编程的开发者,Cursor已经成了我过去两年里最亲密的“结对编程”伙伴。从最初的惊艳于它的代码生成和对话能力,到后来看着每月账单里那笔不菲的AI服务费用&#xff0c…

2026/8/26 2:45:48 阅读更多 →
基于GGUF格式与Transformers库的本地大模型部署与函数调用实战

基于GGUF格式与Transformers库的本地大模型部署与函数调用实战

1. 项目概述:为什么选择 MaralGPT-Mythos-9B-2606-GGUF?最近在尝试本地部署一些开源大模型,发现社区里关于 MaralGPT-Mythos-9B-2606-GGUF 的讨论热度挺高。这个模型名字听起来有点长,但拆开来看就清晰了:“MaralGPT-M…

2026/8/26 2:45:48 阅读更多 →
基于深度学习的甲骨文智能识别:从数据增强到模型部署全流程实战

基于深度学习的甲骨文智能识别:从数据增强到模型部署全流程实战

1. 项目概述:从数学建模竞赛到甲骨文智能识别的实战跨越最近刚带着团队打完今年的Mathorcup,B题“甲骨文智能识别”这道题给我留下了挺深的印象。这道题本质上是一个典型的、但极具文化价值的计算机视觉任务,它要求参赛者利用深度学习技术&am…

2026/8/26 2:44:48 阅读更多 →

日新闻

Python random 模块常用函数详解:从入门到实战

Python random 模块常用函数详解:从入门到实战

目录 1. 引言2. 准备工作3. 基础随机函数4. 序列相关函数5. 随机种子与复现6. 实战案例7. 注意事项8. 常见问题与排查9. 总结 1. 引言 摘要: 本文系统介绍 Python 标准库 random 模块中最常用的随机数生成函数。内容涵盖基础随机函数(random()、unifor…

2026/8/26 0:00:40 阅读更多 →
《Microsoft Sql server 2008 Internals》读书笔记--第三章Databases and Database Files(2)

《Microsoft Sql server 2008 Internals》读书笔记--第三章Databases and Database Files(2)

《Microsoft Sql server 2008 Internals》索引目录: 《Microsoft Sql server 2008 Internals》读书笔记--目录索引 在上篇文章中,主要介绍了创建数据库的基本语法和FileGroup的初步知识。需要注意的是: 关于FileGroup 如果你的系统是用Raid设备直接存…

2026/8/26 1:18:18 阅读更多 →
政务AI智能体怎么建?三种模式、三步路径与四个误区

政务AI智能体怎么建?三种模式、三步路径与四个误区

政务AI智能体已经从概念试点阶段,转入了政务服务的常态化落地应用;在实际使用过程中,它能自主理解办事需求、辅助完成填报申报、开展材料预审,并联动多个系统协同作业,真正嵌入到政务办理的全流程当中。但在落地推进过…

2026/8/26 1:18:18 阅读更多 →

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/25 3:38:12 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/25 3:38:18 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/25 3:38:23 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/24 20:22:44 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/25 10:31:12 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/26 1:24:05 阅读更多 →