Table of Contents
>>>a_list = [1, 2, 3, 4, 5]
>>>b_list = a_list[1:4]
>>>b_list
[2, 3, 4]
可以发现,开始b_list是从第二位开始的,因为列表的引索是从0开始,并且结束的引索是不包含的可以理解为 切片的结果是 >= 开头 and < 结束对于步长
>>>a_list = [1, 2, 3, 4, 5, 6, 7]
>>>b_list = a_list[1:5:2]
>>>b_list
[2, 4]
因为a_list[1:5]的结果是[2, 3, 4, 5],又因为是步长为2所以取[2, 4]如果要取全部的内容的话,开始和结束就不用填如下
>>>a_list = [1, 2, 3, 4, 5, 6, 7]
>>>b_list = a_list[:]
>>>b_list
[1, 2, 3, 4, 5, 6, 7]
>>>b_list = a_list[::2]
>>>b_list
[1, 3, 5, 7]
现在来说一下当步长小于0的时候的情况
>>>a_list = [1, 2, 3, 4, 5, 6, 7]
>>>b_list = a_list[-1:-8:-1]
>>>b_list
[7, 6, 5, 4, 3, 2, 1]
>>>b_list = a_list[::-1]
[7, 6, 5, 4, 3, 2, 1]
结合上面步长>0的介绍,也就差不多理解了
2.灵感代办
python 中解包可以不可以不匹配()
3.学习内容
-
Infinity数字
- infinity也是 Number 有正负,0/0等于
-
swich中的case
- 弱类型语言,可以判断任何类型,number,字符串,bool
-
数组
- 数组里面也是可以各种混合数据
- [1,2,3,4,”a”,”b”,undefined]
-
&&的使用技巧
- 碰到假的就返回,全真才为真
- 短路语句,有数据才执行数据
- data && console.log(data)
-
|| 的使用技巧
- 碰到真就返回,一真则真
- 可以做兼容
-
函数的细节
- 函数定义时候有参无参,调用时候都可以传参
- 传递的参数保存在arguments中
- https://blog.csdn.net/sinat_27801935/article/details/75042940
- 事件对象传递原理
-
比较的一些细节
- 很多语言不支持连续比较
- 表达1<x<10 需要 1<x && x<10
-
JavaScript 是面对对象还是过程
- 即面向对象又面向过程
-
JavaScript中object
- array , null(历史遗留,null是给对象占位的) 都是object
-
JavaScript转换类型
- parseInt() 可以将十进制转换为别的进制
- obj.toString() 将数字对象转换为指定进制
-
隐式类型转换
- isNaN() 方法
- null转换是数字0
- undefined转换是数值NaN
- NaN是number类型
- 将参数Number转换,然后和NaN比较
-
++、--、正负(-、+)
- 自动用Number转换
-
+ (重点)
- 一侧是字符串,就是连接字符串
-
+ - * /
- 用Number转换
-
与&&,||或,非!
- 用Boolean转换
-
\< >
- 字符串和数字比较会转换
-
NaN
- NaN是一个特殊值,自己也不等于自己
- NaN==NaN //false
-
typeof()
- typeof的返回类型是string
-
var 方法定义函数
- var func = function test(){}
- 这样定义的方法,忽略test,只能用func调用,但是func.name是test,如果是匿名函数name就是 func
-
JavaScript中函数名
- 小驼峰原则
-
函数有两种定义方式
- 命名函数表达式
-
function test(){}
- 匿名函数表达式
-
var test = function (){}
-
函数参数 伪数组arguments
- 参数和arguments是映射的,一个改变,另一个也改变
4.扩展延伸知识
5.知识内容个人梳理
6.今天都复习了之前的什么内容
Infinity数字
- infinity也是 Number 有正负,0/0等于
swich中的case
- 弱类型语言,可以判断任何类型,number,字符串,bool
数组
- 数组里面也是可以各种混合数据
- [1,2,3,4,”a”,”b”,undefined]
&&的使用技巧
- 碰到假的就返回,全真才为真
- 短路语句,有数据才执行数据
- data && console.log(data)
|| 的使用技巧
- 碰到真就返回,一真则真
- 可以做兼容
函数的细节
- 函数定义时候有参无参,调用时候都可以传参
- 传递的参数保存在arguments中
- https://blog.csdn.net/sinat_27801935/article/details/75042940
- 事件对象传递原理
比较的一些细节
- 很多语言不支持连续比较
- 表达1<x<10 需要 1<x && x<10
JavaScript 是面对对象还是过程
- 即面向对象又面向过程
JavaScript中object
- array , null(历史遗留,null是给对象占位的) 都是object
JavaScript转换类型
- parseInt() 可以将十进制转换为别的进制
- obj.toString() 将数字对象转换为指定进制
隐式类型转换
- isNaN() 方法
- null转换是数字0
- undefined转换是数值NaN
- NaN是number类型
- 将参数Number转换,然后和NaN比较
-
++、--、正负(-、+)
- 自动用Number转换
-
+ (重点)
- 一侧是字符串,就是连接字符串
-
+ - * /
- 用Number转换
-
与&&,||或,非!
- 用Boolean转换
-
\< >
- 字符串和数字比较会转换
-
NaN
- NaN是一个特殊值,自己也不等于自己
- NaN==NaN //false
typeof()
- typeof的返回类型是string
var 方法定义函数
- var func = function test(){}
- 这样定义的方法,忽略test,只能用func调用,但是func.name是test,如果是匿名函数name就是 func
JavaScript中函数名
- 小驼峰原则
函数有两种定义方式
- 命名函数表达式
-
function test(){}
- 匿名函数表达式
-
var test = function (){}
函数参数 伪数组arguments
- 参数和arguments是映射的,一个改变,另一个也改变
5.知识内容个人梳理
6.今天都复习了之前的什么内容