每天3小时学前端之JS-第06天-对象

前端犄角旮旯,非常规面试题总结(不断更新....) 27、判断类型的方式有哪些?1、typeof操作符:用来检测数据的类型,返回的是一个表示类型的字符串。2、instanceof操作符:用来检测对象是否为指定的构造函数的实例。3、方法:可以返回对象的准确类型。4、方法:用来判断一个变量是否为数组。(一)typeof和instanceof区别typeof返回的是一个字符串,表示变量的数据类型,可能的返回值有numberstringbooleanfunctionundefinedobject。instanceof返回的是一个布尔值,true或。 阅读详情

对象

对象(object)是 JavaScript 语言的核心概念,也是最重要的数据类型。

什么是对象?简单说,对象就是一组“键值对”(key-value)的集合,是一种无序的复合数据集合。

对象的字面量生成方法

var obj = {
  foo: 'Hello',
  bar: 'World'
};

对象的键名

对象的所有键名都是字符串(ES6 又引入了 Symbol 值也可以作为键名),所以加不加引号都可以。

如果键名是数值,会被自动转为字符串。

var obj = {
  1: 'a',
  3.2: 'c'
};

obj
// Object {
//   1: "a",
//   3.2: "c"
// }

obj['3.2'] // c

对象的属性之间用逗号分隔,最后一个属性后面可以加逗号(trailing comma),也可以不加。

如果键名不符合标识名的条件(比如第一个字符为数字,或者含有空格或运算符),且也不是数字,则必须加上引号,否则会报错。

// 报错
var obj = {
  1a: 'Hello World'
};

// 不报错
var obj = {
  '1a': 'Hello World',
  'h w': 'Hello World',
  'c+e': 'Hello World'
};

属性可以动态创建,不必在对象声明时就指定。

var obj = {};
obj.foo = 123;
obj.foo // 123

对象的引用

如果不同的变量名指向同一个对象,那么它们都是这个对象的引用,也就是说指向同一个内存地址。修改其中一个变量,会影响到其他所有变量。

var o1 = {};
var o2 = o1;

o1.a = 1;
o2.a // 1

o2.b = 2;
o1.b // 2

此时,如果取消某一个变量对于原对象的引用,不会影响到另一个变量。

var o1 = {};
var o2 = o1;

o1 = 1;
o2 // {}

属性的操作

属性的读取

读取对象的属性,有两种方法,一种是使用点运算符,还有一种是使用方括号运算符。

var obj = {
  p: 'Hello World'
};

obj.p // "Hello World"
obj['p'] // "Hello World"

请注意,如果使用方括号运算符,键名必须放在引号里面,否则会被当作变量处理。

var foo = 'bar';

var obj = {
  foo: 1,
  bar: 2
};

obj.foo  // 1
obj[foo]  // 2

方括号运算符内部还可以使用表达式。

obj['hello' + ' world']
obj[3 + 3]

数字键可以不加引号,因为会自动转成字符串。

var obj = {
  0.7: 'Hello World'
};

obj['0.7'] // "Hello World"
obj[0.7] // "Hello World"

数值键名不能使用点运算符(因为会被当成小数点),只能使用方括号运算符。

var obj = {
  123: 'hello world'
};

obj.123 // 报错
obj[123] // "hello world"
属性的赋值

点运算符和方括号运算符,不仅可以用来读取值,还可以用来赋值。

var obj = {};

obj.foo = 'Hello';
obj['bar'] = 'World';
属性的删除

delete命令用于删除对象的属性,删除成功后返回true。

var obj = { p: 1 };

delete obj.p // true
obj.p // undefined

删除一个不存在的属性,delete不报错,而且返回true

var obj = {};
delete obj.p // true

练习

  • 对象引用练习
  • 对象操作练习

以后要讲的

  • 属性的查看Object.keys方法
  • 属性是否存在:in 运算符
  • 属性的遍历:for…in 循环
GLM-5.1实现8小时级工程自治:大模型作为任务操作系统 大模型的长期自治能力,本质是将语言理解升级为任务管理——它不再仅回答问题,而是持续维护状态、响应异步事件、感知资源约束。这一能力突破依赖于状态持久化、事件韧性调度与显存自适应推理等底层机制,直接支撑CI/CD执行、Kubernetes告警响应、跨系统数据同步等企业级长周期工程任务。GLM-5.1以8小时为SLA基准,标志着大模型从‘交互式工具’迈向可托付的‘任务操作系统’,为AI运维平台、智能研发助手与自动化合规系统提供工程就绪的技术底座。 阅读详情

相关推荐

前端转AI Agent工程师必须补的后端能力图谱

AI Agent并非单点智能,而是一个融合调度、工具编排、状态管理与可观测性的分布式系统。其核心原理在于将LLM的决策能力与后端的可靠性保障深度耦合:状态机确保跨请求的合法流转,七层HTTP客户端(含熔断、幂等、校验)保障工具调用韧性。这种架构天然要求后端能力作为物理基座,否则Prompt再优、UI再炫也难逃502失败。典型应用场景包括智能客服、自动化行程规划、金融助手等需多步协同、长周期交互的领域。本文聚焦前端工程师最易上手、ROI最高的Agent专用后端能力——不讲Spring Cloud,只讲Redi

weixin_30628801的博客 395

自学java多久可以工作_自学java,学多久可以自己找到工作?

目录前言阶段1 java语言基础1-1-Java基础语法小总结:1-2 -面向对象和封装小总结:1-3-Java语言高级小总结:阶段2 JavaWeb+旅游网小总结:01 HTML和CSS02 JavaScript03 BootStrap04 XML05 Tomcat06-Servlet和HTTP请求协议07 -Request和Respons08-Cookie和Session09-JSP,EL和J...

weixin_42393576的博客 234

Hermes协议感知型Web UI:轻量、实时、可嵌入的工业通信前端

在工业物联网与嵌入式系统中,设备通信协议(如Hermes)的可视化交互长期面临语义缺失、状态不同步和部署复杂等痛点。其核心原理在于将协议结构(topic、payload schema、QoS、ACK机制)深度融入前端逻辑,而非简单封装WebSocket。这种协议感知能力带来显著技术价值:实现毫秒级状态推送、指令级可靠性保障、零客户端分发的跨平台访问。典型应用场景包括产线PLC监控、IoT设备调试、MES/SCADA系统嵌入及固件工程师快速验证。本文聚焦Hermes Web UI这一开箱即用的实践方案,详解其

agtvo48266的专栏 546

Moment.js 日期时间处理:从基础操作到业务场景实战指南

日期时间处理是前端开发中的基础且高频的需求,其核心在于对时间数据的解析、计算、格式化与比较。JavaScript 原生的 Date 对象在易用性和功能上存在局限,因此社区诞生了 Moment.js 这类专门的日期时间库。它通过提供一套链式调用、语义清晰的 API,极大地简化了开发流程,提升了代码的可读性与健壮性。其技术价值在于解决了原生 API 的诸多痛点,如月份索引从0开始、日期溢出、格式化繁琐等,并提供了智能的月末处理、精确的时间范围获取(如月初、季度末)以及强大的国际化支持。在应用场景上,Moment

weixin_34111790的博客 345

AI前端全链路开发:语义锚点驱动的七步工作流

前端开发正从单点AI辅助迈向全链路智能协同,其核心在于建立贯穿需求、UI、逻辑、测试、构建与监控的统一语义体系。不同于泛化的代码补全或设计生成,真正提效的关键是‘语义锚点’——将人类意图结构化为机器可验证的契约(如需求四元组、组件声明、用户行为流),再由AI作为翻译器与执行者实现闭环反馈。这种范式显著降低跨角色理解损耗,提升需求到上线的端到端确定性,并天然支持工程可审计、可迭代、可定制。本文聚焦落地实践,详解如何基于Figma语义标注、结构化提示词、原子化代码注入与Git驱动的AI进化机制,构建可控、可信、

dixi7825的博客 459

前端转AI应用开发的思维转变路径

AI应用开发并非从零学习算法,而是将前端工程师已有的状态管理、异步编程与工程化能力,在概率性系统中重构升级。其核心在于理解大模型输出的不确定性本质,掌握提示词作为‘语义状态’的设计方法,并构建容错、可观测、可编排的人机协作流程。结合前端熟悉的UI还原思维,转向意图对齐与体验闭环设计,使开发者能驾驭LLM、Embedding、RAG等关键技术栈,落地如AI会议纪要、智能客服、合同审查等真实场景。关键词‘前端’‘AI应用开发’‘思维转变’共同指向一场由实现者到AI工作流设计师的角色跃迁。

weixin_33795093的博客 423

全栈之前端 | 10.HTML标签元素事件使用介绍学习实践笔记

本文为作者原创文章,为尊重作者劳动成果禁止非授权转载,若需转载请在【全栈工程师修炼指南】公众号留言,或者发送邮件到 [master@weiyigeek.top] 中我将及时回复。0x00 前言简述描述: 作者在前面第【1.HTML基础必备知识学习笔记】章节中介绍了 HTML 全局属性,本章将主要讲解 HTML 中元素的特有事件属性,HTML 有能力让事件触发浏览器中的动作,例如,当用户单击元素时启动 JavaScript 脚本,由于此处还未讲解 JS 脚本,所以文章只是简单用弹窗。

全栈工程师修炼指南-IT知识分享 1000

生产级Agent技术栈:TypeScript+Next.js+PostgreSQL落地实践

Agent(智能体)作为AI工程化落地的核心范式,其本质是可编排、可观测、可治理的自动化决策单元。其技术实现依赖于强类型语言保障逻辑一致性、流式Web框架支撑实时反馈、兼容型LLM接口确保服务韧性,以及关系型数据库提供审计级日志与结构化追踪。TypeScript通过静态类型约束输入输出Schema,显著降低多团队协作中的集成风险;Next.js App Router原生支持Server-Sent Events,使Agent‘思考-调用-响应’链路得以流式渲染;PostgreSQL凭借JSONB、分区表与GI

weixin_34033624的博客 408

手撸轻量开票系统:Vue3+Node+JWT+pdfmake实战指南

开票系统本质是结构化数据生成与分发工具,其核心原理在于将服务信息、金额计算、客户关系和PDF/邮件交付等环节解耦并工程化落地。技术价值体现在降低小微主体的财税协作成本,避免SaaS系统冗余功能带来的学习与合规负担。典型应用场景包括自由职业者即时开票、设计工作室月度结算、个体工商户电子凭证存档等。本文聚焦真实生产约束下的关键技术选型与细节实现,涵盖Vue 3 Composition API状态管理、Node.js + Express后端安全架构、JWT双Token认证机制及pdfmake高兼容PDF生成方案,

weixin_30825581的博客 336

Claude 20x usage误解:5小时窗口倍率与每周限额的区别解析

在调用大模型API或使用订阅服务时,限流与配额管理是影响任务稳定性的关键因素。不同于固定周期重置,滚动窗口机制通过滑动累计请求量来决定短期可用额度,能有效分散服务压力,但也容易让用户误判剩余资源。以Claude订阅为例,页面标注的20x usage特指5小时滚动窗口内的相对倍率,并非每周限额的20倍;同时还需关注独立的每周累计上限。理解这一原理后,开发者可更科学地规划Claude Code的批量代码审查、文档处理等任务,合理拆分请求批次,避免触发限流。本文还对比了订阅与API计费方式的差异,并给出常见的配置

weixin_34033624的博客 472

Claude 3.5 Sonnet结构化输出:让AI响应解析层归零

结构化输出是大模型工程落地的核心瓶颈,其本质是将非确定性生成结果映射为确定性业务数据。传统方案依赖提示词约束与后处理解析,导致格式脆弱、语义漂移、安全不可控。Claude 3.5 Sonnet通过Schema-Driven Generation技术,将JSON Schema编译进生成过程,实现逐token概率重加权与实时验证回溯,使模型原生输出严格符合定义的结构。该能力显著降低LLM集成复杂度,提升响应完整性与系统鲁棒性,适用于金融、客服、ERP等强结构化需求场景,标志着从‘解析补丁’到‘生成即合规’的范式

soyo的专栏 571

使用js倒计时还有几天及计时过了几天

公司主营业务是体育赛事为主的;尤其是足球赛事。现正值2016法国欧洲杯;之前忙于做欧洲杯专题没时间总结。现分享一个工作中需求带来的经历。 需求是:从现在开始倒计时欧洲杯还有多久开赛;当开赛之后开始计算已经开赛了几天及计算当前是小组赛还是1/8决赛,1/4决赛,半决赛,决赛。 废话不多说,直接上代码: 4 var cdInterval, dateInterval; //...

dc1339485的博客 474

AI工程实践简报:如何用5条高信噪比信息驱动技术决策

生成式AI资讯过载已成为工程师日常痛点,真正有效的AI简报不是知识搬运,而是面向落地的决策支持系统。它需基于可验证的代码实测、明确的业务场景映射与清晰的时效边界,将碎片信息转化为可执行的技术路径。核心价值在于降低‘要不要跟进’的决策成本——例如LoRA微调内存优化37%、Claude 3.5 Sonnet JSON稳定性提升至96.6%,这些指标只有嵌入具体硬件(如A10G)、框架版本(transformers 4.42)和调用约束(max_tokens≤2048)中才具备工程意义。典型应用场景包括SaaS

love android 467

用Flask+SQLite打造睡眠质量数据记录与可视化分析工具

在日常生活与工程实践中,记录数据是发现规律的基础。无论是应用日志、用户行为还是个人健康指标,原始数据只有经过结构化存储、统计分析和可视化呈现,才能转化为可执行的洞察。本文从数据记录与数据分析的基本原理出发,介绍如何利用轻量级Web框架Flask和嵌入式数据库SQLite构建一个本地运行的睡眠质量追踪系统。通过字段设计、跨天时间计算、统计接口与ECharts折线图展示,演示了从数据录入到趋势分析的最小可行闭环。这种技术方案不仅适合Python初学者快速上手,也能迁移到作息观察、习惯追踪等个人量化场景。将主观感

weixin_34417183的博客 406

【WorkBuddy专栏47】学生党用WorkBuddy做开发学习——多语言速成与练习结合实战

【WorkBuddy专栏47】学生党用WorkBuddy做开发学习——多语言速成与练习结合实战

AI人人懂 1092

CIMPro孪大师,支持 3DGS 高斯泼溅的一站式零代码数字孪生平台

高斯泼溅导入数字孪生开发引擎

2501_90821319的博客 1110

SeaweedFS与MinIO深度对比:对象存储选型避坑指南

对象存储是现代应用架构的基础设施,其核心价值在于提供高可用、可扩展、S3兼容的非结构化数据存取能力。理解底层设计原理——如元数据管理方式(集中式vs分布式)、一致性模型(强一致vs最终一致)、数据分片粒度(object级vsvolume级)——直接决定系统在混合硬件、小文件高吞吐、多租户合规等场景下的稳定性与运维成本。SeaweedFS以轻量元数据和volume调度见长,适合自建元数据服务的高性能场景;MinIO则通过Raft+完整S3协议栈保障企业级兼容性与审计能力。本文聚焦真实生产环境中的LIST性能瓶

weixin_33755649的博客 354

AntV G6边动画实战:手把手教你实现数据流向箭头与虚线流动效果

本文详细解析了如何使用AntV G6实现数据流向箭头与虚线流动效果,通过自定义边动画提升数据可视化的动态表现力。从基础环境搭建到核心概念讲解,再到虚线流动动画和箭头路径动画的具体实现与参数调控,帮助开发者掌握G6边动画的高级技巧,适用于网络流量监控、数据传递等场景。

weixin_28487433的博客 268

DevKit:离线JSON格式化、时间戳转换与JWT解析三合一工具

JSON格式化、时间戳转换、JWT解析是开发者日常调试中最基础也最高频的三项能力,其本质是结构化数据解析与时间语义转换的技术实践。它们依赖浏览器原生API(如JSON.parse、Date对象、atob)实现零依赖、低延迟、强安全的本地处理逻辑,技术价值在于规避网络传输风险、消除第三方服务延迟、保障敏感数据不出浏览器内存。典型应用场景覆盖API响应调试、日志时间分析、Token鉴权排查等真实工作流。本文介绍的DevKit工具正是围绕这三大能力构建的纯静态单页应用,完全离线可用,开箱即用。

weixin_30703911的博客 351

ESP32开发环境避坑指南:用Thonny烧录MicroPython固件时常见的5个错误及解决方法

本文针对ESP32开发新手,详细解析了使用Thonny IDE烧录MicroPython固件时最常见的5个错误及其解决方案。内容涵盖驱动安装、端口识别、固件烧录失败、版本兼容性、连接不稳定以及文件系统操作异常等核心痛点,并提供硬件层面的深度排查指南,帮助开发者高效搭建稳定的ESP32开发环境。

weixin_29189003的博客 410

UE4游戏开发:GameInstance与GameMode的实战应用与避坑指南

本文深入解析了UE4中GameInstance与GameMode的核心差异与实战应用。GameInstance作为贯穿游戏进程的全局单例,负责跨关卡数据持久化与系统管理;而GameMode则定义特定关卡内的游戏规则与逻辑,随关卡加载销毁。文章通过数据存储、动态模式切换及网络游戏等场景,提供了清晰的应用指南与常见避坑方案,帮助开发者构建更健壮的UE4游戏架构。

kubernetes8ctl的博客 230

Spring Boot 2.7 + Vue 3 集成企业微信:3步配置实现组织同步与扫码登录

本文详细介绍了Spring Boot 2.7与Vue 3集成企业微信的技术方案,涵盖组织同步与扫码登录的工程化实现。通过三步配置流程,开发者可快速完成企业微信应用的基础设置、接口权限配置及前后端集成,实现高效的系统集成与用户认证。文章还提供了最佳实践、性能优化方案及常见问题排查指南,助力企业快速落地数字化办公解决方案。

weixin_30591551的博客 389

MDK5 Debug调试方法总结

MDK5 Debug调试方法总结

m0_70748084的博客 2万+
上一篇: 每天3小时学前端之JS-第05天-数组
零寂前端
博客等级 码龄11年 59粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值