- 博客(25)
- 收藏
- 关注
原创 模块化详解
关于前端模块化js模块化解决的问题js引擎遇到<script> 会阻塞 所以script必须要按顺序变量覆盖 -> 变量重名 -> 污染全局模块化解决的问题加载顺序污染全局传统模块化,插件化立即执行函数写法:被括号括起来就是表达式,只要是表达式就可以加() 前后加;作用域 执行器上下文 利用立即执行函数 模块的独立作用域模块独立 且相互独立 但是不能解决顺序的问题不注入使用的是全局的,moudleB注入通过参数的形式写变成了内部的临时变量
2021-12-14 20:24:16
923
原创 html头部
基本标签使用 HTML5 doctype,不区分大小写。<!DOCTYPE html> <!-- 使用 HTML5 doctype,不区分大小写 -->声明文档使用的字符编码<meta charset='utf-8'> <!-- 声明文档使用的字符编码 -->更加标准的 lang 属性写法 http://zhi.hu/XyIa简体中文 <html lang="zh-cmn-Hans">繁体中文 <html l
2021-10-18 23:33:07
554
原创 栈---简单迷宫
用一个m×n的矩阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对给定的迷宫,求出找到的第一条从入口到出口的通路,或得到没有通路的结论。我们指定:(1) 迷宫的入口为矩阵的左上角(1,1),迷宫的出口为右下角(m,n);(2) 路径的探索顺序为: 东(右)、南(下)、西(左)、北(上)。#include<stdio.h>#include<malloc.h>typedef struct node{ int i; int j; int k; struc.
2021-09-28 09:45:56
149
原创 React生命周期
生命周期的三个阶段(旧) 1. 初始化阶段: 由ReactDOM.render()触发---初次渲染 1. constructor() 2. componentWillMount() 3. render() 4. componentDidMount() =====> 常用 一般在这个钩子中做一些初始化的事,例如: 开启定时器,发送网络请求,订阅消息 2.
2021-09-16 23:37:24
85
原创 js考核题目1.0
类型转换一:==判断console.log([ ]==false); console.log(![ ]==false)分析[]是一个空数组,也就是一个Object类型,既然是一个Object,那么作判断条件时就会转换为true当空数组和布尔值作比较时,会先将两者都转换为Number类型然后比较,比如false就转换为0,而[]是空数组,也就转换为0,然后两者比较结果为true[] 本身是true,然后加!变成false 然后==判断的时候 都变成number类型去比较console.
2021-06-09 18:17:20
100
原创 Proxy
模板字符串模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。// 字符串中嵌入变量let name = "Bob", time = "today";`Hello ${name}, how are you ${time}?`模板字符串中嵌入变量,需要将变量名写在${}之中。function authorize(user, action) { if (!user.hasPrivilege
2021-04-29 09:10:00
182
原创 rest和...扩展运算符
rest参数ES6 引入 rest 参数,用于获取函数的实参,用来代替 argumentsES5的获取实参的方式function date(){ console.log(arguments);}date('1','2','3'); //产生的不是数组,而是对象//rest 参数:意义一样 但是结果不太一样function date(...args){ console.log(args);}date('1','2','3'); //产生的是数组产生的是数组就可以使用数组
2021-03-26 21:22:35
124
原创 箭头函数
箭头函数ES6 允许使用 箭头 =>定义函数//之前的写法 let fu = function(){ }//箭头函数的写法 let fun = (a,b) => { return a+b; } let result = fun(1,2); console.log(result);和之前函数的区别this是静态的,this始终指向函数声明时所在作用域下的this
2021-03-26 20:54:10
198
原创 闭包
当内部的函数被保存在外部,将会产生闭包。闭包会导致原有作用域链不释放,造成内存泄露。立即执行函数,执行后销毁只有表达式才能被执行符号执行可执行函数忽略名字var num = (function (){ var a = 123; var b = 234; console.log(a+b); return d;}(传入的参数,1,2,3))作用:实现公有变量 eg:函数累加器可以做缓存(存储结构) eg:eater可以实现封装,属性私有化模块化开发,防止污染全局变量 fu.
2021-03-25 20:12:32
84
原创 构造函数及原型原型链
创建一个对象var obj = { name: "孙悟空", age: 18, gender: "男", sayName: function(){ alert(this.name); } }使用工厂方法创建对象function creatPerson(name ,age ,gender){ var obj =
2021-03-25 20:09:46
230
原创 this
thisthis丢失var obj = { id: "awesome", cool: function coolFn() { console.log( this.id ); }};var id = "not awesome";obj.cool(); // awesomesetTimeout( obj.cool, 100 ); // not awesome这个问题就是在 cool() 函数上丢失了 this 绑定。有各种方法可以解决这个问题,但一个经常被重复的解决方案是 va
2021-03-25 19:10:04
77
原创 let 和 const 命令和模板字符串
let 基础用法let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。let命令改变了语法行为,它所声明的变量一定要在声明后使用,否则报错。变量x使用let命令声明,所以在声明之前,都属于x的“死区”,只要用到该变量就会报错。因此,typeof运行时就会抛出一个ReferenceError。ES6 明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域。凡是在声明之前就使用这些变量,就会报错。let
2021-03-24 15:41:46
322
原创 JSON
语法JSON可以表示以下三种类型的值简单值,和js相同,但json不支持 undefined对象,表示的是一组无序的键对数组json不支持变量,函数或对象实例,它就是一种表示结构化数据的格式,并不局限于js的范畴简单值json中字符串必须使用双引号对象json对象有两个地方与js不一样json中没有变量的概念末尾不用加分号js中的对象字面量var object = { name: "Nicholas", age: 29};json中的对象字面量{ "n
2021-03-22 19:41:56
65
原创 js函数和预编译
函数函数定义函数声明 第一种定义方式弱数据类型:document.write(theFirstName);直接打印出内容fuction theFirstName() {}命名函数表达式 函数表达式 第二种定义方式var test = function abc(){ document.write('a');}后面为表达式,表达式忽略名字,此处写abc也没有作用test.name 为 abc 其余两种方式函数名都是自己,这个函数名是后面的匿名函数表达式 第三种定义方式
2021-03-21 20:07:22
109
原创 js基础知识点
var=定义整型,浮点,字母等document.write( );进行输出console.time("计时器的名字")开启计时器,需要一个字符串作为参数,console.timeEnd()用来停止一个计时器,需要一个计时器的名字作为参数Math.sqrt( );对一个数进行开方JS中的数据类型String字符串Number数值Boolean布尔值Null空值Undefined未定义以上五种属于基本类型,不是五种的,都是对象Object(对象)-----...
2021-03-21 20:06:23
63
原创 居中对齐
居中总结居中:盒子在其包含块中剧中1.text-align:center行盒(行块盒)水平居中(行盒只能是常规流)------直接设置行盒(行块盒)父元素 text-align:center2.设置margin1. 常规流块盒水平居中定宽,设置左右margin为auto2. 绝对定位元素的水平居中(absolute)定宽,设置左右的坐标为0,将左右margin设为auto实际上,固定定位fixed是绝对定位absolute的特殊情况3. 绝对定位的垂直居中定高,设
2021-02-07 18:11:09
290
原创 css
css总结分类及位置:内部样式-head区域style标签里面外部样式-link调用内联样式-标签元素里面css样式表的语法CSS规则由两个主要的部分构成:要添加样式的盒子名或者标签名、和要添加的样式。css颜色用十六进制的颜色值表示(红、绿、蓝)#FF0000或者#F00用rgb(r,g,b)函数表示如:rgb(255,255,0)用rgba(r,g,b,a)函数表示其中a表示的是改颜色的透明度,取值范围是0~1,其中0代表完全透明样式的优先级相同权
2021-01-31 20:31:47
107
1
原创 HTML超文本标记语言
HTML超文本标记语言HTML链接HTML 链接<a>HTML 链接是通过标签 来定义的.<a href="https://www.baidu.com">这是一个链接</a>HTML 链接 - target 属性使用 target 属性,你可以定义被链接的文档在何处显示。下面的这行会在新窗口打开文档:<a href="https://www.baidu.com/" target="_blank" rel="noopener noreferrer"
2021-01-24 20:12:59
119
原创 结构和其他数据形式
结构数组声明:struct book library[MAXBKS]library 为一个内含MAXBKS个元素的数组。是数组名数组中的每个元素都是一个book类型的结构变量。标识结构数组中的成员 library[3].value嵌套结构 — 访问时用两次点运算符fellow.handle.first指向结构的指针声明:struct guy * him关键字 struct 其次时结构标记 guy 然后 * 后跟的是指针名指针him现在可以指向任意现有的guy类型的结
2020-12-20 19:33:19
123
原创 存储类别,链接和内存管理
(标识符–名称 左值–指定内存位置的内容)存储期描述对象,标识符用于访问对象,可以用作用域和链接描述全局变量初始化没有做初始化的全局变量会得到0值指针会得到NULL值他们的初始化发生在main以前只能用编译时刻已知的值来初始化全局变量(变量不行)被隐藏的全局变量如果函数内部 存在与全局变量同名的变量,则全局变量被隐藏静态本地变量(与全局变量放在一起)特殊(全局生存区,本地作用域)在本地变量定义时加上static修饰符就成为静态本地变量当函数离开的时候,静态本.
2020-12-13 20:23:31
115
原创 第一次排位
第一次排位赛题解- B 哥德巴赫的猜想解题思路:暴力 求素数求素数:写出素数表,素数筛法,用筛法求素数#include<stdio.h>int main(){ int isprime[1000]; int i,x; for( i=0;i<1000;i++) { isprime[i] = 1; } for( x=2;x<1000;x++) { if( isprime[i] ) { for( i=2;i*x<1000;i++)
2020-11-30 19:21:49
109
原创 动态内存malloc
动态内存1.内存的跨函数使用静态内存不能跨函数使用#include<stdio.h>#include<malloc.h>//静态变量不能跨函数使用 void g(int ** q){ int i = 5; *q = &i ;}int main(){ int *p; //1. f(&p); printf("%d\n",*p); //2.}1.p指向一个地址 把p的地址传给 q *q就
2020-11-29 19:33:20
144
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人