资讯专栏INFORMATION COLUMN

JavaScript面向对象的编程指南(第2版)学习笔记(一)

fancyLuo / 2260人阅读

摘要:我们一般不判断是,判断不是在判断元素是否存在时候,最好使用如果没有定义会有警告第三章,函数返回值一个函数只能有一个返回值,如果有多个返回值,使用数组的形式返回。子句,返回值,就是函数的返回值。示例将一个函数的返回值传递给另一个函数。

第一章

1,用自己的语言描述出,什么是对象、类、封装、聚合、继承、多态?

对象,拥有属性和方法的任何抽象概念。
类,可以实例化,有共同属性或方法(行为)的相似对象,的模板
封装,提供接口,隐藏接口的实现
聚合,将大功能(对象)拆分成小功能(小对象)去实现的逆过程。
继承,子类通过继承获得父类的方法或属性
重写,子类继承父类的方法,改成自己的实现。
多态,、对传递的参数判断来执行逻辑,一种多态处理机制
第二章

1,在控制台输入表达式后,返回undefined原因:

有时可能会看到某个表达式在控制台中的输出,结果为 undefined。为什么这些表达式会输出 undefined 呢?
控制台在执行完输入的表达式后,输出的该表达式运行结果,如果表达式没有返回值,undefined,否则返回返回值。

2, css 中颜色表示的两种方式

rgb(0,0,0)  黑色
rgb(255,0,0)  红色
#ff0000  红色
三基色的顺序都是 red,green,blue

3, 为什么返回结果不一致,a为啥不是NaN呢?

参考提问 https://segmentfault.com/q/1010000014772302
var a = 9/0;
typeof a;
"number"
a;
Infinity

typeof 9/0;
NaN

4,类型转换

将数字字符串转成数字,*1, 转换失败NaN
其他类型转为字符串,+""

var s = "100";
s=s*1;
typeof s;

5,哪些值双重取反后,返回false?

“”,undefined, null, 0, NaN, false
"0", "false", " "  为 true

6,null和undefined区别之一

在转成布尔值类型时候一致
在转为数字类型的数值时,会有区别

Number(null) 0,
Number(undefined) NaN

1*null  = 0;
1+null = 1;

1*undefined = NaN;
1+undefined = NaN;

7,判断一个元素是否初始化。

检查变量是否存在。
我们一般不判断是,判断不是
在判断元素是否存在时候,最好使用typeof
if(somevar){
    balabal
}
//如果没有定义会有警告

if(typeof somevar !=="undefined"){
    balabala
} 
第三章

1,函数返回值

一个函数只能有一个返回值,如果有多个返回值,使用数组的形式返回。
return 子句,返回值,就是函数的返回值。

2,函数的参数,传到方法中的到底是什么值?

函数声明时候,会设置函数的参数,如果调用时候没有传递相关的参数值,js默认为undefined
function sum(a,b){
    return a+b;
}
sum(1);  //NaN

少了,默认undefined
多了,忽略多传的参数。

3, 形参长度和实参长度的区别

arguments.length 是实参的长度,调用函数时候,像函数传递了几个参数的长度.
arguments.callee.length = function.length 形参的长度。
function sum(a,b,c){
    console.log(arguments.length);
    return a+b+c;
}
sum(1,2,3,4,5);

5


sum.length;
3
function sum(a=1,b,c){
    console.log(arguments.length);
}
sum(1,2,3,4,5);
5

sum.length;
为啥是0?
0????????

4, 预定义函数

parseInt 将接受的任何值,转成整数类型输出。失败,返回NaN。
parseFloat 只支持将输入值转换成十进制数,该函数只有一个参数。
isFinite(Infinity) //false
是否是有限的,Infinity无限的。

5, encodeURI 和 encodeURIComponent的区别;

它用于对URL的组成部分进行个别编码。
后者对整个url进行编码,包括一些特殊字符。

6,函数声明和函数表达式

function a() //声明
var a = function()  //函数表达式

7,匿名函数

7.1回调函数
什么时候执行回调函数?将函数c传递给函数A,由函数A来执行函数c就形成回调函数。
示例:将一个函数的返回值传递给另一个函数。
function add(a){
    return a+1;
}
function(arr, callback){
    for(var i = 0;i

7.2立即执行函数

// 两种写法
(function(){})();
(function(){}())
//第二种写法老是忘记
//优点:不会产生任何全局变量。

7.3 修改自身的函数

function a (){
    alert(1);
    a= function(){
        alert(2);
    }
}
//第一次执行和第二次执行就不一样了

返回函数的函数

function a (){
    alert(1);
    return function(){
        alert(2);
    }
}
  a()();  

复习:闭包返回当前值的原因, 如何解释循环闭包打印出来是数组长度?

每个数组都指向了一个共同的局部变量i,但是闭包不会记录i的值,只是拥有在相关域创建时候的一个引用,执行的时候,会从所在域逐级寻找最近的i值,for循环结束后,都指向了那个共同的值。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/95073.html

相关文章

  • ApacheCN 编程/大数据/数据科学/人工智能学习资源 2019.6

    摘要:请回复这个帖子并注明组织个人信息来申请加入。权限分配灵活,能者居之。数量超过个,在所有组织中排名前。网站日超过,排名的峰值为。导航归档社区自媒体平台微博知乎专栏公众号博客园简书合作侵权,请联系请抄送一份到赞助我们 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=...

    Bmob 评论0 收藏0
  • PHPer书单

    摘要:想提升自己,还得多看书多看书多看书下面是我收集到的一些程序员应该看得书单及在线教程,自己也没有全部看完。共勉吧当然,如果你有好的书想分享给大家的或者觉得书单不合理,可以去通过进行提交。讲师温铭,软件基金会主席,最佳实践作者。 想提升自己,还得多看书!多看书!多看书!下面是我收集到的一些PHP程序员应该看得书单及在线教程,自己也没有全部看完。共勉吧!当然,如果你有好的书想分享给大家的或者...

    jimhs 评论0 收藏0
  • ApacheCN 编程/大数据/数据科学/人工智能学习资源 2019.5

    摘要:请回复这个帖子并注明组织个人信息来申请加入。版笔记等到中文字幕翻译完毕后再整理。数量超过个,在所有组织中排名前。网站日超过,排名的峰值为。主页归档社区自媒体平台微博知乎专栏公众号博客园简书合作侵权,请联系请抄送一份到赞助我们 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1...

    zhonghanwen 评论0 收藏0
  • 新书《JavaScript面向对象编程指南2)》

    摘要:前段时间在网络上看了车洪才老先生编写阿富汗语词典的故事。年,万字,完稿时已斗转星移。然而书的修成不都如此吗前有明朝的永乐大典,近有车洪才老先生的阿富汗语词典我还看过一部电影编舟记,讲述的便是一部字典历经十余年的修成。然而我们对此坦然以待。 我记得去年的这个时候我丢了工作,然后每天就是跑步、译书、跑步、译书。非常单调的日子过了两个多月。这种日子过的时候并没有过多地觉得什么,但是译完交稿的...

    silencezwm 评论0 收藏0
  • ApacheCN 编程/大数据/数据科学/人工智能学习资源 2019.4

    摘要:我们是一个大型开源社区,旗下群共余人,数量超过个,网站日超过,拥有博客专家和简书程序员优秀作者认证。我们组织公益性的翻译活动学习活动和比赛组队活动,并和等国内著名开源组织保持良好的合作关系。 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=200); 我们是一个...

    tomorrowwu 评论0 收藏0

发表评论

0条评论

fancyLuo

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<