JavaScript 学习-10.使用const声明常量-编程思维

前言 const 用于声明一个或多个常量,声明时必须进行初始化,且初始化后值不可再修改。 const 声明常量 const定义常量与使用let 定义的变量相似: 二者都是块级作用域 都不能和它所在作用域内的其他变量或函数拥有相同的名称 两者还有以下两点区别: const声明的常量必须初始化,而let声明的变量不用 const 定义常量的值不能通过再赋值修改,也不能再次声明。而 let 定义的变量

JavaScript 学习-11.字符串 String 对象-编程思维

前言 JavaScript 中定义字符串可以用单引号或双引号,用于存储一系列字符。 字符串 声明一个变量的值是字符串类型,可以用单引号和双引号 var x ='hello world'; // 单引号 var y = "hello world"; // 双引号 如果字符串中有引号,可以用单双交替的方式 var a = "He is called 'yoyo'"; // 外双内单 var

JavaScript 学习-12.模板字符串(Template Strings)-编程思维

前言 JavaScript 在ES6 新增了模板字符串(Template Strings)语法,其作用是可以在字符串中换行,以及将变量和表达式插入字符串。 Internet Explorer 不支持模板字面量。 模板字符串(Template Strings) 模板字面量使用反引号 (``) 而不是单引号 ('') 或双引号 ("") 来定义字符串 let a = `这个是一个模板字符串`; c

JavaScript数组常用方法解析和深层次js数组扁平化-编程思维

前言 数组作为在开发中常用的集合,除了for循环遍历以外,还有很多内置对象的方法,包括map,以及数组筛选元素filter等。 注:文章结尾处附深层次数组扁平化方法操作。 作为引用数据类型的一种,在处理数组Array的时候,我们需要考虑到深拷贝和浅拷贝的情况 可以参考以下文章 javaScript中深拷贝和浅拷贝简单梳理 深度解析javaScript常见数据类型检查校验 常用数组操作方法

JavaScript中if语句优化和部分语法糖小技巧推荐-编程思维

前言 在前端日常开发过程中,if else判断语句使用的次数应该是比较频繁的了,一些较为复杂的场景,可能会用到很多判断,在某个代码块使用很多if else时,代码会显得较为冗余,阅读起来不够清晰。 除了if else,在开发过程中,还经常使用 逻辑运算符 && || 以及三木运算符? : 等。 if else 基本使用 let name = "zhangsan"; if (n

JavaScript 学习-9.使用let声明变量-编程思维

前言 ES2015(ES6) 新增加了两个重要的 JavaScript 关键字: let 和 const。 let 声明的变量只在 let 命令所在的代码块内有效。 const 声明一个只读的常量,一旦声明,常量的值就不能改变。 在 ES6 之前,JavaScript 使用var声明变量只有两种作用域: 全局变量 与 函数内的局部变量。 var声明变量使用 var声明变量只有两种作用域: 全局变

canvas动画:自由落体运动-编程思维

经过前面的文章,我们已经能够在canvas画布上画出各种炫酷的图形和画面,但是这些画面都是禁止的,怎么样才能让他们动起来呢? 如何绘制基本图形可以参考:canvas基本图形绘制 如何对基本图形移动旋转缩放可以参考:canvas图形变换 如何设置基本图形颜色和样式可以参考:canvas样式和颜色 如何使用外部图片以及图形组合可以参考:canvas使用图片,图形组合以及裁剪 canvas如何保存和加

canvas实现水波纹效果-编程思维

本文将会从水波的基本原理开始,详细讲解在canvas中模拟水波扩散,分析并计算水波的能量分布,并通过振幅模拟水波对图像的折射效果,最后实现水波特效。 水波基本原理 首先复习一波高中物理知识。 波是指振动的传播。波的传播方向与质点振动方向垂直的为横波,相同则为纵波,水波是横波和纵波的叠加。 对于水波这种波,我们在实现这个特效的时候,需要考虑到下面的特性: 圆形波:当你投一块石头到水池中时,你会看到

一次日语翻译的Chrome插件开发经历-编程思维

序言 去年7月刚过了日语N2,想着今年考个N1,为了加深日语文化的了解,还有学习日语,平时免不了经常上日语网站。 但是毕竟水平有限,所以不免遇到不认识的单词,日语单词的一个特点就是很多单词你知道是什么意思,但是不知道怎么读。 比如:“簡素な構造” 中的第一个词:“簡素”,很显然就是“简单,朴素的意思”,但是你肯定不知道它的读音是:“[かんそ]①”。 以前遇到这样的词的时候,就会在沪江小D网页版上

JavaScript 学习-7.函数定义的几种方式-编程思维

前言 JavaScript中函数定义基本分3种方式:函数声明,函数表达式,构造函数。 函数声明 函数声明使用function 关键字, 格式如下 function 函数名称([参数]) { // 执行代码 } 函数声明后,它不会自己执行,需要调用才会执行,调用函数使用函数名称加括号,如 function fun1() { // 执行代码 console.log('hel

Angular中懒加载一个模块并动态创建显示该模块下声明的组件-编程思维

环境: Angular 13.x.x angular中支持可以通过路由来懒加载某些页面模块已达到减少首屏尺寸, 提高首屏加载速度的目的. 但是这种通过路由的方式有时候是无法满足需求的. 比如, 点击一个按钮后显示一行工具栏, 这个工具栏组件我不希望它默认打包进main.js, 而是用户点按钮后动态把组件加载并显示出来. 那为什么要动态加载呢? 如果直接在目标页面组件引入工具栏组件, 那么工具

Node.js 使用 express-jwt 解析 JWT-编程思维

Node.js 上 Token 鉴权常用的是 passport,它可以自定义校验策略,但如果你是用 express 框架,又只是解析 JWT 这种简单需求,可以尝试下 express-jwt 这个中间件。 关于 JWT JWT 全称 JSON Web Token,是代替传统 session 认证的解决方案。其原理是服务端生成一个包含用户唯一标识的 JSON 对象,颁发给客户端。客户端请求需

重学前端 - react 项目第一节:创建react 项目-编程思维

重学前端 - react 项目第一节:创建react 项目 简介:之前一直使用的都是 vue 全家桶开发项目,现在在新的项目上开始使用react开发。 现在开始在重新学习一下 react 相关技术。 本项目使用: react 18.1.0 react-router-dom 6.3.0 管理路由 redux 全局状态管理 typescript 加强 Ant Design 4.20.4 全局 UI

JavaScript 学习-5.对象(object)的创建-编程思维

前言 对象(object)是 JavaScript 最重要的数据类型,也是JavaScript的核心内容。JavaScript 中一切皆对象,比如String、 Array、Date等对象。 在 JavaScript 中,对象是非常重要的,当你理解了对象,就可以了解 JavaScript 。 对象的概念 对象是无序的数据集合,由键值对组成,对象键值对的写法类似于: Python 中的字典 PHP

当你运行npm run命令时,会发生什么?-编程思维

摘要:今天我们来聊一聊运行npm run命令之后会发生什么。 本文分享自华为云社区《运行npm run命令的时候会发生什么?》,作者:gentle_zhou 。 先前发了一篇“运行npm install命令的时候会发生什么?”的文章,解析了输入npm install命令之后会发生什么的一系列过程。就有一些看过文章的小伙伴来问我,那么运行npm run命令之后会发生什么呢,本文就来啦。 scrip

JavaScript 学习-1.注释与 var 变量声明-编程思维

前言 JavaScript 是 Web 的编程语言。所有现代的 HTML 页面都使用 JavaScript。 JavaScript 简介 JavaScript 的学习分三个部分: 1、核心(ECMAScript):JavaScript的核心,描述了语言的基本语法和数据类型。ECMAScript 是一套标准,定义了一种语言的标准与具体实现无关。 2、文档对象模型DOM(Document Objec