2020.12.17

**

1.JS

//函数的属性
function getStudent(name,gender){//…gender为剩余参数(把其他收集到一个里面),name为形式参数,他的长度getStudent.length为1
return ‘’;
}
console.log(getStudent.length)
console.log(getStudent.name);//输出getStudent
const getStudent1=function(){
return ‘’;
}
console.log(getStudent1.name);//输出getStudent1
console.log(getStudent1.prototype);//所有 对象都有prototype这一个属性

//call(),apple()是间接调用函数

//call
function add(c,d){
console.log(this.a+this.b+c+d);
}
add(3,4);//NaN 因为this.a/this.b是undefind
//add(3,4)等同于add.call(undefind,3,4);输出NaN this是全局对象
let num={a:1,b:2};
add.call(num,3,4)//10

const person={
name:‘郑海蓉’,
say:function(){
return 你好,我是${this.name}
},
};
function moreSay(age,hobby){
console.log(${this.say()},我${age}岁,喜欢${hobby})
}
moreSay.call(person,21,“滑滑板”);
//var声明变量,定义一个全局变量,就是挂在window下面的一个属性了

//apply
let array=[‘a’,‘b’];
let enement=[0,1,2];
let a=[…array,…enement]
console.log(a);//[‘a’,‘b’,0,1,2] 数组不可变性,可以带来预测的结果
array.push.apply(array.enement);
console.log(array);//[‘a’,‘b’,0,1,2] 数组可变性,不可预测

//借用方法
const numbers=[1,2,3,4,5];
let max=Math.max.apply(null,numbers);//null代表为a全局变量
console.log(max);

//bind绑定
var large={
a:100,
};
small.go(2,3,4);//10
const person={
age:21,
getNameAndAge:function(name){
return name+" "+this.age;
},
};
//直接在person对象上调用方法
person.getNameAndAge=person.getNameAndAge;
//将方法的调用低值给变量nameAndAge
const nameAndAge=person.getNameAndAge;
//通过引用nameAndAge,调用底值给它的函数
nameAndAge(“郑海蓉”);
const boundNameAndAge=nameAndAge.bind(person,“郑海蓉”);
boundNameAndAge();
//不带任何参数绑定
const boundNameAndAge=nameAndAge.bind();
boundNameAndAge(“郑海蓉”);
const boundNameAndAge=nameAndAge.bind(undefined,“郑海蓉”);
//将this设置为null
const boundNameAndAge=nameAndAge.bind(null,“郑海蓉”);
boundNameAndAge();

//函数的toString()方法
const ;getStudent2=function(){
return ‘zheng’;
}
console.log(getStudent2.toString());//查看原生代码
console.log(Math.max.toString());//不能查看原生代码

//Memoizaton
//斐波那契数组
const fina=function(n){
// if(n<2){
// return n;
// }else{
// return fina(n-1)+fina(n-2);
// }等同于return n<2? n:fina(n-1)+fina(n-2);
return n<2? n:fina(n-1)+fina(n-2);
};
console.time();
console.log(fina(3));
console.timeEnd();
const finaCache=function(n){
finaCache.cache=finaCache.cache || {};
// if(finaCache.cache !=undefined){
// finaCache.cache=finaCache.cache;
// }else{
// finaCache={};
// }
//带缓存版本的
if(!finaCache.cache[n]){
finaCache.cache[n]=n <2? n:finaCache(n-1)+finaCache(n-2)
}
return finaCache.cache[n]
}
console.time();
finaCache(20);
console.timeEnd();
console.time();
let a=finaCache(20);//所消耗时间更小
console.timeEnd();
console.log(a);

//通用版的函数,参数就是对象的属性

//IIFE(立即调用函数表达式)
(function(){
var temp=2;
})();
// {
// const temp=1;
// }
// console.log(temp);等同于ES6
console.log(temp)

//临时变量

//严格模式

//模块模式
var myModule=(function(){
var myPrivateVar,myPrivateMethod;
myPrivateVar=0;//私有变量
myPrivateMethod=function(foo){
console.log(foo) ;
};
return {//return下的方法可以调用
myPrivateVar:“foo”,//公开变量
myPublicFunction:function(bar){
//公开方法
myPrivateVar++;
myPrivateMethod(bar);
},
};
});

//暴露的模块模式
var myPevealingMoudle=(function(){
var privateCounter=0;
function privateFunction(){
privateCounter++;
}
function publicFunction(){
publicIncrement();
}
function publicIncrement(){
privateFunction();
}
function publicGetCount(){
return privateCounter;
}
//暴露公有属性和方法,指向私有属性和方法
return{
start:publicFunction,
increment:publicIncrement,
count:publicGetCount,
};
})();
myPevealingMoudle.start();
myPevealingMoudle.increment();
myPevealingMoudle.count();

//closure
function outerFunc(){
let outerVar=“I am outside!”;
function innerFunc(){
console.log(outerVar);
}
return innerFunc;
}
const myInnerFunc=outerFunc();
myInnerFunc();//=>输出"I am outside"

//闭包实列

//回调,也是一个典型的闭包
const message=‘hello world’;
setTimeout(function callback)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以按照以下步骤在PyCharm 2020.1专业版中安装中文语言包: 1. 打开PyCharm并进入主界面。 2. 点击顶部菜单栏中的 "File"(文件)选项。 3. 在下拉菜单中选择 "Settings"(设置)。 4. 在打开的窗口左侧的面板中,找到 "Appearance & Behavior"(外观和行为)选项,并展开它。 5. 在展开的选项中,点击 "Appearance"(外观)。 6. 在右侧的窗口中,找到 "Override default fonts"(覆盖默认字体)下方的 "Font"(字体)选项,并点击旁边的 "..." 按钮。 7. 在弹出的字体设置窗口中,找到 "Primary font"(主要字体)下方的 "Size"(大小)选项,并选择合适的字体大小。 8. 在同一个窗口中,找到 "Fallback font"(回退字体)下方的 "Size"(大小)选项,并选择合适的字体大小。 9. 返回到主界面,点击顶部菜单栏中的 "File"(文件)选项。 10. 在下拉菜单中选择 "Settings"(设置)。 11. 在打开的窗口左侧的面板中,找到 "Editor"(编辑器)选项,并展开它。 12. 在展开的选项中,点击 "Color Scheme"(颜色方案)。 13. 在右侧的窗口中,找到 "Scheme"(方案)下方的 "Scheme:"(方案:)选项,并选择 "Default"(默认)。 14. 返回到主界面,点击顶部菜单栏中的 "File"(文件)选项。 15. 在下拉菜单中选择 "Settings"(设置)。 16. 在打开的窗口左侧的面板中,找到 "Editor"(编辑器)选项,并展开它。 17. 在展开的选项中,点击 "File Encodings"(文件编码)。 18. 在右侧的窗口中,找到 "IDE Encoding"(IDE 编码)下方的 "Project Encoding"(项目编码)选项,并选择 "UTF-8"。 19. 关闭设置窗口并重启PyCharm。 这样就完成了在PyCharm 2020.1专业版中安装中文语言包的过程。希望对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值