页面跳转方式
前端工作有很多地方需要页面跳转,有很多种实现方法。
HTML标签
一般形式上可以用<a></a>
、<button></button>
、<input/>
:
1 | <a href="链接">GO</a> |
JS跳转页面代码
本页跳转
1 | window.location.href = '链接'; |
前端工作有很多地方需要页面跳转,有很多种实现方法。
一般形式上可以用<a></a>
、<button></button>
、<input/>
:
1 | <a href="链接">GO</a> |
1 | window.location.href = '链接'; |
Sublime Text3 是一款很好用的编辑器,想要优雅地使用它,知道部分快捷键和插件是必须的。
快捷键 | 描述 |
---|---|
control + - | 回到上一个光标 |
control + shift + - | 回到下一个光标 |
control + cdm + ↑/↓ | 移动当前行代码 |
control + option + t | 交换选中的两部分代码 |
cmd + option + [ | 折叠选中的代码 |
cmd + option + ] | 展开选中的代码 |
shift + cmd + p | 打开命令面板 |
control + ` | 打开控制台 |
cmd + n | 新建标签 |
cmd + 1/2/3… | 标签切换 |
cmd + option + 2 | 分成两屏 |
cmd + delelte | 删除本行光标前的所有字符 |
cmd + shift + ↑/↓ | 选中光标上下代码 |
cmd + f | 查找 |
option + cmd + f | 查找替换 |
cmd + t | 跳转到指定文件 |
control + g | 跳转到指定行 |
cmd + r | 跳转到指定函数 |
cmd + l | 选中当前行 |
cmd + / | 注释当前行或注释选中代码 |
cmd + option + / | 产生注释代码或注释选中代码 |
cmd + k + b | 开关侧边栏 |
双引号内部变量会解析,单引号则不解析。
1 | $abc = 'my name is Tom'; |
建议 PHP 引号使用原则:
1 | <?php |
PHP 命名空间(namespace)是在PHP 5.3中加入的,可以解决以下两类问题:
默认情况下,所有常量、类和函数名都放在全局空间下,就和PHP支持命名空间之前一样。
命名空间通过关键字namespace 来声明。可以在同一个文件中定义不同的命名空间代码。
如果一个文件中包含命名空间,它必须在其它所有代码之前声明命名空间。在声明命名空间之前唯一合法的代码是用于定义源文件编码方式的 declare 语句。所有非 PHP 代码包括** 空白符 **都不能出现在命名空间的声明之前。
1 | <?php |
对于用 Mac 的小伙伴来说,这是一个非常实用的技能,我花了些时间研究了下,现在写下我的心得。
网上一查,主要有两种方法,首先请打开你的终端。
find命令来自unix,OS X 和 Linux 系统同样支持该命令。find最基本的语法是:
1 | find 文件路径 选项 目标文件 |
比如你可以通过以下命令全局搜索名字是 php.ini 的文件:
1 | find / -name "php.ini" |
也可以在指定的文件夹中查找以 php 开头的文件:
1 | find ~/Library/ -name "php*" |
mdfind命令就是Spotlight功能的终端界面,mdfind命令非常迅速。最基本的使用方法是:
1 | mdfind -name 文件名 |
和find一样请务必加上 -name 选项,不加就会搜出一大堆文件。
亲自试了一下这两个方法,速度上 mdfind 快 find 几条街,所以强烈推荐使用 mdfind 。但是使用mdfind -name 文件名
和你用Spotlight终端一样是无法搜索被隐藏的文件的。如果你需要搜索隐藏文件,请在终端输入sudo mdfind -name 文件名
。
PHP(全称:Hypertext Preprocessor,即:超文本预处理器”)是一种在服务器上执行的通用开源脚本语言。作为一位 PHP 初学者,决定将一些知识点记录下来。
变量以 $ 符号开始,后面跟着变量的名称。
变量名必须以字母或者下划线字符开始,只能包含字母数字字符以及下划线。
PHP变量名和语句一样都是区分大小写的。
PHP 有四种不同的变量作用域:local、global、static、parameter。
global 关键字用于在函数内部访问全局变量。
1 | <?php |
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子字符串。
语法 string.replace(searchvalue,newvalue)
参数 | 描述 |
---|---|
searchvalue | 必须。规定子字符串或要替换的模式的 RegExp 对象。 |
newvalue | 必须。规定了替换文本或生成替换文本的函数。 |
执行一个全局替换, 忽略大小写:
1 | var str="Mr Blue has a blue house and a blue car"; |
属性 | 描述 |
---|---|
global | RegExp 对象是否具有标志 g |
ignoreCase | RegExp 对象是否具有标志 i |
multiline | RegExp 对象是否具有标志 m |
source | 正则表达式的源文本 |
lastIndex | 一个整数,标示开始下一次匹配的字符位置 |
lastIndex 语法 RegExpObject.lastIndex
该属性存放一个整数,它声明的是上一次匹配文本之后的第一个字符的位置,该属性是可读写。
注意:不具有标志 g 和不表示全局模式的 RegExp 对象不能使用 lastIndex 属性。如果在成功地匹配了某个字符串之后就开始检索另一个新的字符串,需要手动地把这个属性设置为 0。
RegExp(regular expression) 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。
1 | var reg = new RegExp(pattern,modifiers); |
1 | /* 注意一个是引号包裹,一个是斜杠包裹,特殊字符需要转义 */ |
修饰符 | 描述 |
---|---|
i | 执行对大小写不敏感的匹配 |
g | 执行全局匹配 |
m | 执行多行匹配 |
方括号用于查找某个范围内的字符:
表达式 | 描述 |
---|---|
[mhg] | 查找方括号之间的任何字符 |
[^mhg] | 查找任何不在方括号之间的字符 |
[a-z] | 查找任何从小写 a 到小写 z 的字符 |
(mh|g|abc) | 查找任何指定的选项 |
1 | var str = "Is this all there is?"; |
元字符(Metacharacter)是拥有特殊含义的字符(以下省略部分生僻元字符):
元字符 | 描述 |
---|---|
. | 所有单个字符,除了换行和行结束符 |
\w | 单词字符 |
\W | 非单词字符 |
\d | 数字字符 |
\D | 非数字字符 |
\s | 空白字符 |
\S | 非空白字符 |
\b | 单词边界 |
\B | 非单词边界 |
\n | 换行符 |
\r | 回车符(与换行符的区别请戳这里) |
\xxx | 以八进制数 xxx 规定的字符 |
\xdd | 以十六进制数 dd 规定的字符 |
\uxxxx | 以十六进制数 xxxx 规定的 Unicode 字符 |
量词 | 描述 |
---|---|
n+ | >=1(至少一个) |
n* | >=0(任意个) |
n? | <=1(至多一个) |
n{X} | X个n |
n{X,Y} | X至Y个n |
n{X,} | 至少X个n |
n{0,X} | 至多X个n |
n$ | 结尾为 n 的字符串 |
^n | 开头为 n 的字符串 |
?=n | 其后紧接 n 的字符串 |
?!n | 其后没有紧接 n 的字符串 |