29 对象&函数
switch:
穿越:
没有判断结果的情况下执行下一个case的语句块,叫穿越
或者穿越:
switch(s%10){
case 1:
case 2:
case 3:
s++;
break;
default:...;
}
累积穿越:
switch(s%10){
case 0:
s = 100;
case 1:
case 2:
case 3:
s++;
break;
default:...;
}
switch判断:
switch(true){//此处必须写true,否则不会进入下面代码块
case s > 90:...;
break;
case s > 95:...;
break;
case s > 95:...;
break;
default:...;
}
对象
设置变量的属性:
obj[a] = value;
如果a为变量,那么对象的key为此变量a的值,a的值改变,变量的key也改变
如果a为常量,那么对象的key为a本身
对象的key在ES5下必须是字符串类型
var obj = {a:1};
var t = 9;
obj[t] = 2;//obk[9] = 2;
obj['a'] = 3;//{a:3}
obj[10] = 1;//{10:1}
obj.a = 100;//{a:100}
console.log(obj);
for in循环:
遍历对象、数组、字符串的key,是ES5标准
var obj = {x:1,y:2,z:3}
for (const key in obj) {
console.log(key);//打印x,y,z
console.log(obj['key']);//打印undefined,没有此key可以对应的值
console.log(obj[key]);//打印obj中key为x,y,z对应的值
}
函数:
script标签创建时,会优先将函数存入堆中,将函数名存入栈中(匿名函数只有在代码运行到定义匿名函数后才能调用,没有被预先放入栈中,不在此列)
下面的script标签可以调用上面script标签定义的内容,反之不能
<script>
var first = 1;
// console.log(second);报错not defined
</script>
<script>
var second = 2;
console.log(first);//打印1
</script>
匿名函数:
var fn = function(){}
包括自执行函数: (function(){})();
构造函数
var fn = new Function("a","b","console.log(a+b)"){}
作用域:
参数:
执行函数时填入值与函数参数列表顺序一致
参数可以是任意内容,如果没有传入参数,就是undefined
js是一个弱类型语言,因此参数不能强制约定类型(有时需要判断)
ES5中不能设置参数默认值,ES6可以 参数是局部变量也是临时变量,_w,_h,_color
参数列表:
如果参数数量不确定,或者不设置参数,却又在调用函数时传入了参数
那么参数就会存在于参数集arguments中
arguments是个虚伪数组
arguments.callee:代表函数本身
arguments.callee.caller:代表调用当前函数的环境函数(谁调用我我就是谁)
回调与递归:
回调:我调别人
递归:我执行我自己
堆栈溢出: 递归回调次数过多,或者没有终结递归回调的条件
29 对象&函数的更多相关文章
- JavaScript中两种类型的全局对象/函数
这里所说的JavaScript指浏览器环境中的包括宿主环境在内的. 第一种是ECMAScript Global Object,第二种是宿主环境(Host)下的全局对象/函数. 一.核心JavaScri ...
- jquery系列教程7-自定义jquery插件全解:对象函数、全局函数、选择器
点击打开: jquery系列教程1-选择器全解 jquery系列教程2-style样式操作全解 jquery系列教程3-DOM操作全解 jquery系列教程4-事件操作全解 jquery系列教程5-动 ...
- day11函数的参数,函数对象 - 函数名,函数的嵌套调用
复习 # 什么是函数:具体特定功能的代码块 - 特定功能代码块作为一个整体,并给该整体命名,就是函数 # 函数的优点: # 1.减少代码的冗余 # 2.结构清晰,可读性强 # 3.具有复用性,开发效率 ...
- python中的一等对象--函数
一等对象 什么是一等对象: 在运行时创建 能赋值给变量或数据结构中的元素 能作为参数传递给函数 能作为函数的返回结果 python中的字符串,列表什么的都是一等对象,但对如果之前只是使用c++.jav ...
- python第四十八课——类函数和对象函数
5.类函数和对象函数 类函数:在定义函数的上面一行书写@classmethod,特点:没有self 有cls 对象函数:定义在class中的普通的def函数 演示类函数和对象函数的定义使用: 总结: ...
- JQuery对象函数
1.JQuery对象函数写法格式 简单示例: main代表对象名,main.roleName = (function () { return $('#RoleName').val();})();表示为 ...
- JavaScript中两种类型的全局对象/函数【转】
Snandy Stop, thinking is the essence of progress. JavaScript中两种类型的全局对象/函数 这里所说的JavaScript指浏览器环境中的包括宿 ...
- Python 函数对象-函数嵌套-名称空间与作用域-闭包函数
今日内容: 1. 函数对象 函数是第一类对象: 指的是函数名指向的值可以被当中数据去使用 1.可以被引用 2.可以当做参数传给另一个函数 3.可以当做一个函数的返回值 4.可以当做容器类型的元素 2. ...
- PHP 类/对象函数
PHP类/对象函数是PHP核心的一部分,无需要安装就可以使用. 函数名称 描述 __autoload 尝试加载未定义的类 class_alias 为一个类创建别名 class_exists 检查类是否 ...
随机推荐
- 怎么把VS里的scanf_s换成scanf
转自:https://blog.csdn.net/hansionz/article/details/79889039 方法一:在项目属性中---->配置属性------>C\C++---- ...
- 2019牛客多校第一场E ABBA dp
ABBA dp 题意 给出2(N+M)个AB字符,问能构造出N个AB子序列和M个BA子序列组成的2*(n+m)的序列种类有多少 思路 碰到计数构造类的题目,首先要去找到判断合法性的条件,即什么情况下合 ...
- IE的css hack
#element { color:orange; } #element { *color: white; } /* IE6+7, doesn’t work in IE8/9 as IE7 */ #el ...
- HTML学习(5)标题、水平线、注释
HTML 标题 标题(Heading)是通过 <h1> - <h6> 标签进行定义的. <h1> 定义最大的标题. <h6> 定义最小的标题. 注: 浏 ...
- MySql 怎么存取 Emoji
01.前言 Emoji 在我们生活中真的是越来越常见了,几乎每次发消息的时候不带个 Emoji,总觉得少了点什么,似乎干巴巴的文字已经无法承载我们丰富的感情了.对于我们开发者来说,如何将 Emoji ...
- 229. 求众数 II
Q: 给定一个大小为 n 的数组,找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素. 说明: 要求算法的时间复杂度为 O(n),空间复杂度为 O(1). 示例 1: 输入: [3,2,3] 输出: [3 ...
- makecert 产出证书
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin>makecert -r -n // -e // -sv mymuse.pvk my ...
- php一些实用的自制方法
时间戳转多久之前 function mdate($time = NULL) { $text = ''; $time = $time === NULL || $time > time() ? ti ...
- Java“被迫”退出争霸,Python继续霸占首位!老牌程序员:我不服
2019年转眼已经接近尾声,如果盘点下2019年最火的语言,除了Python还能有谁?你心中的王者语言又是谁? 这一年Python风光无限 这一年JAVA走向右边 这一年,我们都很感慨,你呢? 关于P ...
- C++的四种转换(const_cast、static_cast、dynamic_cast、reinterpreter_cast)
static_cast 相当于C语言中的强制转换:(类型)表达式或类型(表达式),用于各种隐式转换 非const转const.void*转指针.int和char相互转换 用于基类和子类之间的指针和引用 ...