Hexo


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

JS中出现undefined和null情况

发表于 2020-07-19

出现undefined的情况

  • 创一个变量不赋值,获取这个变量是undefined
  • 获取对象里的属性名所对应的属性值获取不到,是undefined
  • 函数里,实参没有给形参变量赋值,那就是undefined
  • 函数里,没有return(没有返回值),函数里执行结果就是undefined
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//出现undefined的情况
//创一个变量不赋值,获取这个变量是undefined
let a;
console.log(a); //undefined

//获取对象里的属性名所对应的属性值获取不到,是undefined
var obj = {};
console.log(obj.a);//undefined

//函数里,实参没有给形参变量赋值,那就是undefined
function fn(a, b) {
console.log(a, b); //undefined undefined
}
// 函数里,没有return(没有返回值),函数里执行结果就是undefined
console.log(fn()); //undefined

出现null的情况

  • 清对象空间地址手动赋值为null
  • 通过getElementById获取元素,没有对应的ID,那就是null
  • 当正则用捕获时,捕获不到内容,默认捕获结果是null.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//出现null的情况
var obj = {};
obj = null;
console.log(obj);

//通过getElementById获取元素,没有对应的ID,那就是null
let box = document.getElementById("box");
console.log(box); //null

//当正则用捕获时,捕获不到内容,默认捕获结果是null.
let reg=/\d/
console.log( reg.exec("ad"));//null

//获取节点获取不到
let a=document.getElementById("a");
console.log(a.previousElementSibling);//null

解决git-clone下载过慢的问题

发表于 2020-07-19

原因:git clone特别慢是因为github.global.ssl.fastly.net域名被限制了。只要找到这个域名对应的ip地址,然后在hosts文件中加上ip–>域名的映射,刷新DNS缓存便可。
由于我的是Mac电脑,我说的只针对Mac电脑

1. 进入终端命令行模式,输入

1
sudo vim /etc/hosts

2. 输入i进入编辑模式,移动到最后一行准备输入

3. 用浏览器访问http://tool.chinaz.com使用IP查询工具获得github.com和github.global.ssl.fastly.net的ip地址

234df4ce3231e1e286653df74152849e.png
6dfacc07e4e7f627601b26d79b633955.png

4. 回到第2步中按如下格式输入:

1
2
192.30.253.112 github.com
151.101.44.249 github.global.ssl.fastly.net

5. 按 esc 键,然后输入 :wq 保存文件并退出vim编辑模式,到此hosts文件修改结束

6. 更新DNS缓存,命令行中输入

1
sudo killall -HUP mDNSResponder

结语:

最终我的电脑由3kb提高到了16kb(提升的不多但起码比原来快了)
2be2e2ad88323afd2ecbbe03abac7e20.png
96a79fed6e41e1bef15186c3e71d7f89.png

hexo博客从一台电脑迁移到另一台电脑

发表于 2020-07-19

第一步:将原来电脑的文件夹复制到新电脑

这其中包括三个必备的文件:config.yml(站点配置_)、theme(主题文件夹)、source(博客内容文件)。次要文件:scaffolds(文章的模板)、package.json(使用包的说明文件)和.gitignore(限定在提交的时候哪些文件可以忽略)三个次要文件为自动生成的,因此丢失也不影响博客内容,后续在hexo init时会生成这三个文件。需要删除的文件:.git文件、node_modules(进行npm install会重新生成)、public(执行hexo g时会重新生成)、.deploy_git文件夹(执行hexo d时会重新生成)、db.json文件。其实上面这些可删除的文件即为.gitignore文件里面记载的可以忽略的内容。
总结:_config.yml、theme、source、scaffolds、package.json、.gitignore应该进行拷贝,.git/,node_modules/,public/,.deploy_git/,db.json文件需要删除

第二步:安装hexo

1
2
npm install hexo-cli -g
npm install

第三步:新建ssh-key

1
ssh-keygen -t rsa -C "511167495@qq.com"

之后会出现:

1
2
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/jacky/.ssh/id_rsa):

直接回车就可以。
然后会出现:

1
2
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

要求你输入密码,这个密码会在你提交项目时使用,如果为空的话提交项目时则不用输入。这个设置是防止别人往你的项目里提交内容。

注意:输入密码的时候没有*字样的,直接输入就好。
然后会出现:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Your identification has been saved in /c/Users/jacky/.ssh/id_rsa.
Your public key has been saved in /c/Users/jacky/.ssh/id_rsa.pub.
The key fingerprint is:
65:58:······02:4b emailname@email.com
The key's randomart image is:
+--[ RSA 2048]----+
| |
| . o . |
| . o o = o |
| . o * = o |
| E o + o . |
| . o. . . |
| .. |
+-----------------+
————————————————

第四步:添加SSH Key

  • 打开本地文件:id_rsa.pub(文件路径可以在上一步SSH生成成功后看到路径,具体在’Your public key has been saved in’后面),可以将这个文件在编辑器中打开,然后全选复制
  • 登陆github,点击头像位置处 Settings ——> SSH and GPG keys,点击新建SSH Key
  • 将复制的内容全部粘贴在Key文本框内,title填不填均可

第五步:设置用户信息

1
2
git config --global user.name "lilixuelian"
git config --global user.email "511167495@qq.com"

第六步:hexo正常操作

1
2
3
$ hexo s # http://localhost:4000/预览
$ hexo g # 编译
$ hexo d # 发布

test

发表于 2020-07-18

this is just a test page.

班级会议

发表于 2019-09-29

过程

  • 发现问题
  • 提出问题
  • 识别问题(问题的类型)
  • 研究问题,解决问题
  • 归纳总结,提升、提炼、抽象
  • 学术交流(凑与、书面—–即学术论文)—–发表

问题类型

  • 理论问题
  • 技术问题
  • 工程问题

抽象

符号化、形式化(尽量精确化,减少模糊,减少不确定性,有逻辑性、严谨性)、模型化(用形式化的、符号化的模型表示、表达)

要求

1、阅读论文

  • 自学能力(提前学习应学课程,学习其他可能不学的课程,其他专业课程)
  • SQ3R SQ4R
  • 阅读理解能力(语言)
  • 观察能力
  • 数学的抽象能力
  • 逻辑表达能力
  • 逻辑思维能力

其他

教材,其内容相对比较成熟,或刚刚成熟
论文是最新成果(理论、技术)
实验数据,原始数据,代加工(分析、综合、归纳、总结)的数据】

用我们学校的网站去查一些科研论文,打开华中师范大学图书馆—–①中文数据库(国内科技期刊)———对什么感兴趣看哪方面的相关内容,找
学位论文相对也会落后一点
要找最新的找期刊论文和会议论文(科技论文在线)

斯普林格数据库,这里就有有关计算机科学方面的知识
acm(英文)
中文期刊里有英文摘要,从中取出关键词,可以作为关键词搜索英文论文
②外文数据库:
Ieee国际工程师联合协会,里面有很多期刊 计算机科学、多媒体、网络、人工智能的期刊都是分开的
③专利数据库

看一些新的发明

问题

  • 推荐算法 计算机书
    和教学结合起来,如何把推荐和老师教学、学生学习结合起来
  • 游戏中教学
  • 自然语言处理
  • 数据处理 和概率统计有关
    大数据,数据挖掘,数据储存
  • 图像处理、视频处理
    做出更多更精确的处理
    有没有可能自动去找摄像头中的异常点
    教育视频 只想看链表这一部分,自动跳到这部分
  • 科学计算
    火箭的路线、着陆

借国外最新的原文版教材 数字逻辑 数据结构

c++:为什么抽象成类,类之后就是实例成对象,什么是封装,重用
sdn software define network
sda anything

遗传算法 生物信息学
计算数学
计算物理学

前端新人计划

发表于 2019-09-06

新人守则:

符合等式百度+思考+失败+翻墙+谷歌+尝试=解决的问题最好不要发文

week1 ~ week3

主要任务

  • 下载vscode
  • 学习HTML和CSS,参考资料:
    ①HTML-MDN
    ②CSS-MDN
    ③学习CSS布局
    ④flex布局
  • 完成task
  • 完成机试题和暑期训练营题目
  • 重构学而并更正

任务详情

一、task

Task1

请实现以下表格的HTML部分
表格
提示:注意<thead>,<tbody>的使用


Task 2

请实现以下表单的HTML部分
图片名称


Task3

将这个模板通过CSS实现以下效果
图片效果
要求使用浮动布局方法,并需要清除浮动。


Task4

  • 实现 flex布局最后的练习
  • 实现以下效果(flex布局实现垂直居中):
    图片效果
  • 修改模板实现以下效果(flex布局实现水平居中):
    图片效果

Task5

布局:定位与居中
Tips:两个扇形定位在矩形的两角,矩形水平垂直居中,通过绝对定位实现
图片名称


学而页面

重构学而首页,做出一个和它一模一样的页面出来并根据导师的 codeview进行修正完善。

要求:

  • HTML 与 CSS 分离
  • 像素级还原。
  • 只需实现静态页面。js效果不要求,比如推荐选项卡切换,点击按钮查看更多之类的都不用。
  • 注意页面为定宽居中布局
  • 注意 class 复用
  • 使用git作为版本控制工具,利用github的gh-pages分支托管页面。最后在进度里发链接。

week4 ~ week9

  • 学习JS

计算机基础知识

发表于 2019-09-06

计算机基础知识

  • 安装Ubuntu系统
  • 注册Github账号并搭建仓库
  • 学习并使用markdown语法
  • 搭建Github博客
  • 翻墙

安装Ubuntu系统

  • 安装Ubuntu系统安装教程
  • 安装完成后尝试去配置它,让你的系统更加美观
  • 安装配置Zsh终端
  • 掌握常用的命令行操作
  • 如果你有余力的话推荐你去看《Unix&Linux大学教程》,熟悉更多的linux系统操作

其他参考内容:
why Linux
Linux 特点


注册Github账号并搭建仓库

GitHub,全世界开发者的安全空间,在这里,你可以分享你的代码为大家所用,也可以和全世界的开发者一起共建完善你的代码。在这里,你可以学习借鉴前辈的经验快速提升技能,也可以更好地展示自己的学习成果为未来发展撰写自己的名片。

  • 注册自己的账号
  • 完善github上的个人信息(包括地址、姓名、头像等)
  • 在本地成功搭建仓库
  • 学习Git的常用命令,完成第一次contribution
  • 如果你有余力的话可以再了解了解Git操作背后的机制(git commit 和 git push的背后发生了什么)
  • 如果你有余力的话希望你能学习更多的Git命令,尝试掌握更多的Git用法:例如版本控制、多人合作等等

创建账号搭建博客的参考教程


学习并使用Markdown语法

Markdown以其易写、易读、纯键盘操作解放鼠标及学习简单15分钟即可上手等多种优势在众多书写格式中脱颖而出,它是全球最大的技术分享网站GitHub和技术问答网站StackOverFlow的御用书写格式,是程序员所应掌握的必备技能。

  • 寻找并选择一款喜欢的Markdown编辑器
  • 通过自己查阅资料掌握最基本的Markdown语法操作(包括标题、列表、文字样式、图片、链接、引用、代码块、表格等基本操作)
  • 用学会的Markdown语法在自己的Github上更新一篇进度吧!

搭建Github博客

在成功创建Github账号之后,我们希望你能够在Github上搭建自己的博客,并定期更新自己的学习总结和想法等(这是你的博客,你可以在上面写任何的内容),总结是学习过程中必要的步骤。

  • 搭建博客①Windows环境②Ubuntu环境
  • 为自己的博客选择合适的主题和样式(你可以尽可能的让它美观一些,别忘了一定要选择有语法高亮的主题)
  • 更新你的第一篇博文吧,在上面总结一下你搭博客时遇到的问题及解决方式,并总结使用博客常用的命令行。

翻墙

ShadowSocks是一个开源的翻墙软件, 木犀在美国的另外一台服务器上配置了ShadowSocks。ShadowSocks的优点在于可以扫描长城防火墙的端口,访问国外网站时走美国,访问国内网站时走国内,体验很好。

ShadowSocks配置:
可以安装ShadowSocks客户端

  • Mac客户端
  • Windows客户端
  • ios客户端
  • 安卓客户端

其他:
还可以使用其他的vpn运营商提供的服务

  • 熊猫翻滚
  • 鱼摆摆

常用公式和操作总结

发表于 2019-07-21

Ubuntu 截图、录屏转为gif

  • install kazam
  • install ffmpeg
  • capture —> save 为 a.mp4 文件
  • -i a.mp4 b.gif```即可把a.mp4文件转化为b.gif
    1
    2
    3
    4
    5
    6
    7
    8

    具体教程如下:
    * [Ubuntu 17.10下使用kazam制作gif动态图片](https://www.linuxidc.com/Linux/2017-12/149849.htm
    * 进阶教程:[kazam快捷键操作](https://www.jianshu.com/p/e1f6177dba3a)

    ### Hexo添加视频和gif图片
    1、添加视频代码:(长宽可以自己定义)
    ```<iframe height=100 width=100 src="视频地址">

2、添加 gif 代码:(长宽可以自己定义)
<iframe height=100 width=100 src="gif 图片地址">

图片地址是?

例如src="./CSS使用过渡/过渡例子.gif",其中CSS使用过渡是文章名称,也就是存放文章图片的那个文件夹的名称,过渡例子.gif是该gif图片的名称

CSS使用过渡

发表于 2019-07-21

什么是过渡?

  • CSS3中,我们为了添加某种效果可以从一种样式转变到另一个的时候,无需使用Flash动画或JavaScript。用鼠标移过下面的元素:

怎样使用过渡?

首先来看一个小例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
</head>
<style type = "text/css">
p{
width: 50px;
height: 50px;
background-color: red;
}
p:hover{
width: 100px;
height: 100px;
background-color: yellow;
}
</style>
<body>
<p></p>
</body>
</html>

在此我们使用到了

1
2
3
那么如何让过渡不那么生硬,**逐渐变化**呢?我们可以使用CSS的一个属性```trasition```,参考W3school中的[教程](http://www.w3school.com.cn/cssref/pr_transition.asp),可以进一步了解它。
加入transition属性之后:[例子](https://codepen.io/lilixuelian/pen/EqVxxz)
![](CSS使用过渡/transition.png)

<!DOCTYPE html>







`
可以看到红色先变成橙色再变成黄色,逐渐变化,没有那么生硬了。

使用变换

star-task

发表于 2019-07-20

2019木犀星计划前端组

负责人

  • 李雪莲(QQ: 511167495)
  • 张敏跃(QQ: 1345449751)

    前端组简介


下面开始做星计划吧!

准备工作:

1、首先你要准备工具来编写你的html和css代码,下面推荐两种方式,第一种是下载编辑器,第二种是在jsbin中在线编辑。

  • 下载编辑器推荐:VS code、Sublime Text、atom
  • 在线编辑推荐:JSbin、codepen

2、其次你需要参考以下学习资料,了解html文件的基本结构、认识基本的html标签并学会使css添加样式

任务一

要求理解已给代码并修改表格样式,实现如下效果:

  • 为表格添加黑色边框,宽度为1px
  • 每个单元格宽度为100px,高度50px,并让文字水平垂直居中
  • 为表格添加一个标题,标题名为总结,要求水平居中
  • 设置表格中所有的数字为红色

如下图所示:

任务二

要求实现如下效果:

  • 注意div,ul,li等标签的使用
  • “公”“通”“素”三个字要求水平和垂直居中
  • 要求使用选择器复用来实现以上效果
123
lixuelian

lixuelian

27 日志
1 分类
25 标签
GitHub E-Mail
© 2020 lixuelian