js复习笔记(二)

函数章

1.创建绝对值函数

法(一):

function abs(x) {
    if(x>=0) {
        return x;
    } else {
        return -x;
    }
}

法(二):

var abs = function(x) {
    if(x>=0) {
        return x;
    } else {
        return -x;
    }
}

2.参数问题

重点是判断参数的“状态”!(有无参数,是否存在问题)

举个例子:

var abs = function(x) {
    if(x>=0) {
        return x;
    } else {
        return -x;
    }
}

此时的参数可能有问题也可能不存在,那么就要手动抛出异常:

var abs = function(x) {
    //手动抛出异常来判断
    if(typeof x!== 'number') {
        throw 'Not a Number';
    }
    if(x>=0) {
        return x;
    } else {
        return -x;
    }
}

3.arguments

功能:获取传递进来的所有参数,返回的是数组。

var abs = function(x) {
    console.log("x=>"+x);
    for(var i=0;i<arguments.length;i++) {
*length作用是对应数组长度*
        console.log(arguments[i]);
    }
    if(x>=0) {
        return x;
    } else {
        return -x;
    }
}

4.变量作用域

(1)函数体内声明的变量,不能在函数体外使用。
(2)如果两个函数使用了相同的变量名,在函数的内部也不会冲突。
(3)内部函数可以访问外部函数,但外部函数是不可以访问内部函数的
(4)内部函数和外部函数变量重名后不会互相影响。

5.

JS中函数变量是由“内”向“外”查找,如果外部存在同名的函数变量,那么内部函数会自动屏蔽掉外部函数,个人理解是内部函数优先级比外部函数高。

规范:所有的变量定义都放在函数的头部,便于代码维护

提升作用域:

function f() {
    var x = "x" + y;
    console.log(x);//xundefined
    var y = "y";
}

其本质是在头部定义。

6.全局变量

全局对象window。

var x = "xxx";
window.alert(window.x);

其实在操作的时候可以将“winow.”去掉。

【原因:在js里默认所有的全局变量都会自动绑定在window对象上,并且alert()这个函数本身也是一个window对象】

假设没有在函数范围内找到全局变量,就会向外查找,如果在全局作用域都没有找到,就会报错RefrenceError。

7.const常量

定义:只能用全部大写字母,避免修改这样的值。

举个例子说

var PI = "3.14";//其实是可以被改变值的,但是并不是真正意义上的常量。

8.方法

定义:把函数放在对象里面

(而对象里除了方法还有属性,仅此而已)

var ming = {
    name:"xiaowei",
    birth:2002,

调用方法,一定要加()

比如ming.age()

问题:this关键字到底是什么?

代表函数在运行时自动生成的一个内部对象,只能在函数内部使用,并且this的指向是不确定的,是默认指向调用它的对象。

引用百度的回答是:简单理解为谁调用this所在的方法,this就是谁。


一个半小时的课程内容很丰富,函数一章内容有点多,可以说是核心,笔记仍有待完善。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • js简介 Js是一种基于事件和对象驱动的解释性、松散性的语言。 一切皆对象 javascript 布兰登艾奇 ...
    塔库纳玛哈哈阅读 5,060评论 0 2
  • JavaScript的相关语法知识:1、函数(important)基本上所有的高级语言(C、OC、JavaScri...
    天山雪莲_38324阅读 3,860评论 0 2
  • 参考 学习网站 廖雪峰的JavaScript教程 w3cshool 阮一峰的JavaScript全栈工程师培训教程...
    HuangJn阅读 2,939评论 0 1
  • JavaScript,通常缩写为 JS,是一种解释执行的编程语言。它是现在最流行的脚本语言之一。 JavaScri...
    神齐阅读 10,709评论 1 32
  • 推荐指数: 6.0 书籍主旨关键词:特权、焦点、注意力、语言联想、情景联想 观点: 1.统计学现在叫数据分析,社会...
    Jenaral阅读 11,076评论 0 5

友情链接更多精彩内容