ES6入门系列
未读1. 扩展运算符
…表示,将一个数组转为用逗号分隔的参数序列,如下:
console.log(...[1,2,3]) // 1 2 3
console.log(1, ...[2,3,4], 5) // 1 2 3 4 5
[...document.querySelectorAll('div')] // [<div>, <div>, <div>]
function add(x, y){
return x + y
}
const n = [3, 5]
add(...n) // 8
扩展运算符可以和正常函数结合使用,如下:function f(a,b,c,d,e){
console.log(a,b,c,d,e)
}
const age = [0,1]
f(-1,...age,2,...[3]) // -1 0 1 2 3
扩展运算符后面也可以是表达式,如下:const x = 10
const arr = [
...(x > 0 ? ['a' ...
重学JS系列
未读第一章 javascript字符串1.0、字符串基本数据类型1、javascript字符串可以是一个基本数据类型或者一个对象2、与JavaScript中其他四种数据类型并列:数字、布尔、null 和 undefined3、作为基本数据类型,字符串也是JavaScript直接量:这是一个集合,包含数字 数组 对象和正则表达式、数字和布尔值的直接量格式
1.0、字符串对象123456789101112131415161、字符串对象叫做string,与其他JavaScript对象一样,它拥有预先构建到对象类型中的一组属性2、可以使用JavaScript的new运算符来实例化一个string对象,从而创建一个新的对象实例: var city = new String("This is pin")3、一旦实例化了,可用的字符串属性的任何一个,都可以通过字符串进行访问,例如: var lcCity = city.toLowerCase(); // 将字符串中的大写字母转换成小写 结果:this is pin 4、如果你没有使用new来访问String构造函数,将 ...
Python系列
未读1. dict
Python中的dict等于js中的 map ,使用键-值(key-value)存储,具有极快的查找速度。
如果 我们要根据同学的姓名去查找他的成绩在不用dict的情况下。就需要两个list:
names = ['Michael', 'Bob', 'Tracy']
scores = [95, 75, 85]
// 通过一个名字,去查找对应的位置,再从scores中取出对应的成绩
这样导致list的越来越长,速度越来越慢
// 如果通过dict实现,只需要“名字-成绩”就行,无论这个表多大,查找速度都不会变慢,如下:
>>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
>>> d['Michael']
95
原理: 因为dict是通过索引去查找的而不是通过遍历的方式去找的。
// 除了初始化指定外,还可以通过key放入:
>>> ...
Python系列
未读1. 条件判断
计算机之所以能做很多自动化的任务,是因为它可以自己做条件判断如下:
age = 20
if age >= 18:
print('your age is', age)
print('adult')
// 如果age >= 18 那么就会执行下面的语句,反之则不会执行。
age = 3
if age >= 18:
print('your age is', age)
print('adult')
else:
print('your age is', age)
print('teenager')
// 注意 :号,还可以用更详细的方法来执行如下:
age = 3
if age >= 18:
print('adult')
elif age >= 6:
print('teenager')
else:
print('kid' ...
Node系列
未读Node.js REPL
Node.js REPL (交互式解释器),表示一个电脑的环境,类似window的终端或者shell,使的我们可以在终端中输入名,并接受系统的响应。Node自带了交互式解释器,可以执行下面任务:
1. 读取 - 读取用户输入,解析输入了JavaScript数据结构并存储到内存中。
2. 执行 - 执行输入的数据结构
3. 打印 - 输出结果
4. 循环 - 循环操作以上步骤直到用户按下两次Ctrl-c 退出
我们在安装Node后 可以通过输入node启动终端
1. 简单的表达式运算$ node
> 1 +4
5
> 5 / 2
2.5
> 3 * 6
18
> 4 - 1
3
> 1 + ( 2 * 3 ) - 4
3
>
ctrl + c - 退出当前终端。
2. 使用变量
你可以将数据存储在变量中,并在你需要的时候使用它。
变量声明需要使用 var 关键字,如果没有使用 var 关键字变量会直接打印出来。
使用 var 关键字的变量可以使用 console.log() 来输出变量。
$ node
> x ...
Python系列
未读1. list
Python内置的一种数据类型是列表,list 它是一种有序的集合,可以随时添加和删除其中的元素。
>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates
['Michael', 'Bob', 'Tracy']
// 变量 classmates就是一个list,可以通过len(classmates)
来查看classmates的长度。
可以通过索引来访问list中每一个位置的元素,索引从0开始。
>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates[0] // 'Michael'
>>> classmates[1] // 'Bob'
>>> classma ...
ES6入门系列
未读1. 函数参数的默认值
1.1 用法
在ES6之前是不能为函数的参数指定默认值的,要想实现默认值只能通过判断赋值的方式来实现,在ES6中允许函数为参数设置默认值,主要是为了提高代码的可阅读性,有利于代码的优化。另外注意的是在参数赋值的时候,该参数不能重复使用,不能使用let const 进行定义。
// ES6 之前实现
function log(x, y) {
y = y || 'World';
if (typeof y === 'undefined') {
y = 'World';
}
console.log(x, y);
}
log('Hello') // Hello World
log('Hello', 'China') // Hello China
log('Hello', '') // Hello World
// ES6 中实现
function log(x, y = & ...
1. attr()
用来选择元素的属性值,用法:attr(html元素的属性名),正常搭配css content一起使用
12345678910html:<p><a href="http://a.b.c" name="attr">十</a></p><p><a href="http://d.f.e" name="我是谁">九</a></p>css:a:after{content:'('attr(href) '/' attr(name) ')'}结果:十(http://a.b.c / attr)九(http://d.f.e / 我是谁)
2. calc()
用于动态计算长度值 calc(数学表达式)
运算符前后需要有空格
不管什么长度都可以用calc计算
calc() 支持 ‘+’,’-‘,’*’,’/‘ 等运算
calc ...
ES6入门系列
未读1. 二进制和八进制表示法
ES6提供了二进制和八进制数值的新写法,分别用前缀 0b(0B) 和 0o(0O)表示 如下:
0b111110111 === 503 // true
0o767 === 503 // true
2. Number.isFinite(), Number.isNaN()
ES6在number上提供了 Number.isFinite(), Number.isNaN()两个方法,前者用来检查数值是否为有限的,后者用来检查一个值是否为NAN,如下:
Number.isFinite(15); // true
Number.isFinite(0.8); // true
Number.isFinite(NaN); // false
Number.isFinite(Infinity); // false
Number.isFinite(-Infinity); // false
Number.isFinite('foo'); // false
Number.isFinite('15'); // false
Number.isFinite( ...
Python系列
未读1. 字符编码
由于计算机只能处理数字,如果要处理文本就必须将文本转换为数字才能处理,最早设计的时候采用8b 表示一个字节,一个字节能够表示的最大整数是255,如果要表示更大的整数,就必须用多个字节。另外由于计算机是美国人发明的,所以计算机早期只有127个字符被编码到计算机了,也就是Ascii码,后来要处理中文中国就指定了GB2312 ,但是其他国家也有自己的语言 然后就有了不同的标准, 所以就有组织将所有的统一成 Unicode编码。
2. python字符串
在python 中字符串支持多语言,python 提供了 ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符,如下:
>>> ord('A')
65
>>> ord('中')
20013
>>> chr(66)
'B'
>>> chr(25991)
'文'
由于python字符串类型是str,在内存中以 unicode表示,一个字符对应若干字节,如果需要在网上传输 ...