2190420笔记

package-lock.js的作用

原来package.json文件只能锁定大版本,也就是版本号的第一位,并不能锁定后面的小版本,你每次npm install都是拉取的该大版本下的最新的版本,为了稳定性考虑我们几乎是不敢随意升级依赖包的,这将导致多出来很多工作量,测试/适配等,所以package-lock.json文件出来了

鉴黄神器 infinitered/nsfwjs

https://github.com/infinitered/nsfwjs

webstrom 配置eslint 自动修复错误

https://www.jianshu.com/p/9f4528b16a4e

js 的replace

content.replace(/<img [^>]*src=['"]([^'"]+)[^>]*>/gi, function (match, capture) {
    console.log(match,capture);
});

//<img src="http://static.cnblogs.com/images/logo_small.gif" alt="" width="142" height="55" />

//http://static.cnblogs.com/images/logo_small.gif



python 面向对象 单下划线、双下划线、头尾双下划线说明:

foo:(前后都要双下划线) 定义的是特殊方法,一般是系统定义名字 ,类似 init() 之类的。

_foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *

__foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。


Python 使用了引用计数这一简单技术来跟踪和回收垃圾。


Python sorted() 函数

  • sort 与 sorted 区别:

sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

  • sorted 语法

sorted(iterable[, cmp[, key[, reverse]]])

http://www.runoob.com/python/python-func-sorted.html


python 的 对象自带函数 repr__和__str

__repr__和__str__这两个方法都是用于显示的,__str__是面向用户的,而__repr__面向程序员

  • repr_( self )
    转化为供解释器读取的形式
    简单的调用方法 : repr(obj)

  • str( self )
    用于将值转化为适于人阅读的形式
    简单的调用方法 : str(obj)


JavaScript(ES5)的面向对象精要

https://github.com/JChehe/blog/blob/master/posts/《JavaScript面向对象精要》读书笔记.md


js的this对象

function sayNameForAll(){
  console.log(this.name);
}

var person1 = {
  name: "Nicholas",
  sayName: sayNameForAll
}

var name = "Jack";
    
person1.sayName(); // 输出 "Nicholas"
sayNameforAll(); // 输出 "Jack"


python list的extend函数

extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。

aList = [123, 'xyz', 'zara', 'abc', 123];
bList = [2009, 'manni'];
aList.extend(bList)

print "Extended List : ", aList ;
//Extended List :  [123, 'xyz', 'zara', 'abc', 123, 2009, 'manni']

python的关键字参数

  • 可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple。而关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict
def person(name, age, **kw):
    print 'name:', name, 'age:', age, 'other:', kw

或者

>>> person('Michael', 30)
name: Michael age: 30 other: {}
>>> person('Bob', 35, city='Beijing')
name: Bob age: 35 other: {'city': 'Beijing'}
>>> person('Adam', 45, gender='M', job='Engineer')
name: Adam age: 45 other: {'gender': 'M', 'job': 'Engineer'}
  • 参数组合
    在Python中定义函数,可以用必选参数、默认参数、可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数

python 函数的默认参数

ython函数在定义的时候,默认参数L的值就被计算出来了,即[],因为默认参数L也是一个变量,它指向对象[],每次调用该函数,如果改变了L的内容,则下次调用时,默认参数的内容就变了,不再是函数定义时的[]了。


Python rfind()方法

Python rfind() 返回字符串最后一次出现的位置(从右向左查询),如果没有匹配项则返回-1。


好句

没有合适的工具,要么创造一个,要么选择一个合适的。


阅读 《全栈增长工程师指南》

https://github.com/phodal/growth-ebook


freeCodeCamp

https://github.com/freeCodeCamp/freeCodeCamp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值