Posts
JS 对象基本用法
对象 JS 有7种数据类型: number, string, bool, symbol, null, undefined, object
而对象 object 的定义为: 1. 无序的数据集合 2. 键值对的集合
key 对应对象的属性名 property value 对应对象的属性值 内容1:声明对象的两种语法 1.
let obj1 = {'name': 'Billy', 'age': 18} 2.
let obj2 = new Object({name: 'Billy', age: 18}) 键名是字符串,不是标识符,可包含任意字符 引号可以省略,省略之后就只能写标识符 就算引号省略了,键名也还是字符串 内容2:如何删除对象的属性 let obj = {'name': 'Billy', 'age': 18} delete obj.name delete obj['age'] // 不含属性名 ’sex‘ in obj === false // 含有属性名,但是值为 undefined ’xxx' in obj && obj.
Posts
JavaScript 的基本语法简介
1. 语句&表达式 JavaScript 程序的执行单位为行(line),也就是一行一行地执行。一般情况下,每一行就是一个语句(statement)。
语句是为了完成某种任务而进行的操作,例如赋值语句。
var num = 1 + 2; 其中 1 + 2 为表达式(expression),指一个为了得到返回值的计算式。
所以语句主要是为了进行某种操作,一般情况不需要返回值(可能有也可能没有)且会改变环境(赋值、声明);而表达式一般则是返回一个值。
2. 标识符的规则 标识符(identifier)指的是用来识别各种值的合法名称,例如变量名、函数名。
首先,JS 的标识符大小写敏感; 其次,标识符命名规则:
第一个字符,可以是任意 Unicode 字母(包括英文字母和其他语言的字母),以及美元符号(\$)和下划线(_)。 第二个字符及后面的字符,除了 Unicode 字母、美元符号和下划线,还可以用数字 0-9。 JavaScript 有一些保留字,不能用作标识符:arguments、break、case、catch、class、const、continue、debugger、default、delete、do、else、enum、eval、export、extends、false、finally、for、function、if、implements、import、in、instanceof、interface、let、new、null、package、private、protected、public、return、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield。
3. if else 语句 if(表达式) { 语句1 } else { 语句2 } // or function fn(){ if(表达式) { return 表达式 } if(表达式) { return 表达式 } return 表达式 } 4. while for 语句 while(表达式) { 语句 } while (i < 10) { console.
Posts
JavaScript 的历史简介
JavaScript(通常缩写为 JS)是一种高级的、解释型的编程语言。JavaScript 是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象编程,命令式编程,以及函数式编程。
1993 年,最早流行的图形接口网页浏览器 NCSA Mosaic 发表了。
1994 年底,网景公司(Netscape)发布了 Navigator 浏览器 0.9 版,成为 90 年代互联网的主要浏览器。
网景预见到网络需要变得更动态。1995 年,网景招募了布兰登·艾克,他仅用了 10 天就把 JavaScript 的原型设计出来了。
JavaScript 推出后在浏览器上大获成功,微软公司在不久后就为 Internet Explorer 3 浏览器推出了 JScript,以与处于市场领导地位的网景产品同台竞争。JScript 也是一种 JavaScript 实现,这两个 JavaScript 语言版本在浏览器端共存意味着语言标准化的缺失。
1996 年 11 月,网景正式向 ECMA(欧洲计算机制造商协会)提交语言标准。1997 年 6 月,ECMA 以 JavaScript 语言为基础制定了 ECMAScript 标准规范 ECMA-262。JavaScript 成为了 ECMAScript 最著名的实现之一。
参考来自:维基百科
Posts
浅析 URL
URL 统一资源定位符(英语:Uniform Resource Locator,缩写:URL;或称统一资源定位器、定位地址、URL 地址,俗称网页地址或简称网址)是因特网上标准的资源的地址(Address),如同在网络上的门牌。 详细-维基百科
URL 由协议+域名或 IP+端口号+路径+查询字符串+锚点组成 https,是协议; zh.wikipedia.org,是服务器; 80,是服务器上的网络端口号; /w/index.php,是路径; ?title=Special:随机页面,是询问。 6.#(+内容),为锚点
一般访问一个网站,比如输入 baidu.com 浏览器会向电信/联通提供的 DNS 服务器询问对应的 IP,回答 IP 后,浏览器向对应 IP 的 80(提供 http 服务)/443(提供 https 服务)端口发送请求。
1. DNS 域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS 使用 TCP 和 UDP 端口 53。当前,对于每一级域名长度的限制是 63 个字符,域名总长度则不能超过 253 个字符。 详细-维基百科
简单的说,DNS 就是将域名(如 www.baidu.com )转化为机器可读的 IP 地址(如 192.0.11.1)
nslookup 命令用于查询 DNS 的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。 2.
Posts
CSS 小结
有一段时间没写博客了,项目高峰期已过,该学习一波了
小结一下 CSS
1. 浏览器渲染原理 根据 HTML 构建 DOM 根据 CSS 构建 CSSOM 将两棵树合成一棵渲染树 rendertree Layout 布局(文档流、盒模型、计算大小和位置) Paint 绘制(边框颜色、文字颜色、阴影等) Compose 合成(根据层叠关系展示画面) 三种更新方式:
例如用 transform: translateX 替代 left,性能上不会产生 repaint,要更好。
2. 盒模型 (box-sizing) (1) content-box width = content (兼容低版本 ie 可以用 content-box 避免出现 scroll 时宽度变化)
(2) border-box width = content + padding + border (通常使用的)
3. 一个 div 的分层 从上往下(屏幕外向里)依次是:
内联子元素(文字内容) 浮动元素 块级子元素 border background 4.
Posts
HTML常用标签
a 标签的用法 1. href 包含超链接指向的 URL 或 URL 片段。
2. target <a href="https://www.baidu.com" target="_blank">first</a> 此时可在新窗口打开百度
其他的还有_top, _parent, _self
3. download 理论上在标签里加上download可以下载,但是很多浏览器不支持
4. rel=noopener 暂空
img 标签的用法 <img src="" alt="" /> 作用 发出 get 请求,展示一张图片
属性 src 为图片地址, alt 为图片加载失败时,显示的文字
事件 onload/onerror
响应式
max-width: 100%; table 标签的用法 table { width: 300px; table-layout: auto; border-spacing: 20px; border-collapse: collapse; } table th, td { border: 1px solid saddlebrown; } <table> <thead> <tr> <!
Posts
HTML入门笔记1
有幸看了 2 天 TI,大巴黎咚咚咚!
概述 HTML 的全名是“超文本标记语言”(HyperText Markup Language),上个世纪 90 年代由欧洲核子研究中心的物理学家蒂姆·伯纳斯-李(Tim Berners-Lee)发明。
起手 平常写 HTML 通过 EMMET 语法,!+tab 即可
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> </body> </html> 标签 浏览器渲染网页的时候,会把 HTML 源码解析成一个标签树,每个标签都是一个节点(node),称为网页元素(element)。所以,“标签”和“元素”基本上是同义词,只是使用的场合不一样:标签是源码角度来看,元素是从编程角度来看,比如<p>标签对应网页的 p 元素。
章节标签 h1~h6 标题 section 章节 article 文章 p 段落 header 头部 footer 脚部 main 主要内容 aside 旁支内容 div 划分 内容标签 ol+li 有序列表 ul+li 无序列表 dl+dt+dd 术语+描述 pre 保留 html 中的空格 hr 分隔线 br 换行 a 超链接 em 着重元素 strong 加粗 code 呈现代码 quote 引用 blockquote 块级引用 全局属性 属性(attribute)是标签的额外信息,使用空格与标签名和其他属性分隔。
Posts
记录用hugo搭建个人博客
开始新的工作已经一个多月了,最近学习了用 hugo 在 GitHub 上搭建个人博客,记录一下。
进入hugo releases下载hugo 下载后将exe文件解压缩,并记录path: 右键我的电脑 -> 属性 -> 高级系统设置 -> 环境变量 -> 在 Path 里添加(上下都行) 此时可以通过命令行查看版本信息 进入hugo官网,点击Quick Start(看得懂可以直接参照官网进行设置,无视后面内容) 新建一个文件,在命令行输入: hugo new site 你的github账号.github.io-creator cd 刚刚创建的目录 git init git submodule add https://github.com/budparr/gohugo-theme-ananke.git themes/ananke echo 'theme = "ananke"' >> config.toml hugo new posts/my-first-post.md 这时可以用 VSCode 打开 -creator 目录下的 posts/my-first-post.md 里面的 title 即为这篇博客名,draft 草稿,false 状态即可展示 hugo server -D启动服务器,可以点击链接查看博客页面,ctrl+c 退出 修改 language,最下面的 theme 为当前主题 最后,我们要把博客放到 public 目录下给别人看,自己在 creator 里写就好; 命令行直接输入hugo,会发现多了一个 public 目录,直接cd public 创建一个 .