JS的函数和对象一
1.递归
在函数的内部调用自身,默认是一个无限循环。
2.匿名函数
没有名称的函数 function(){ }
(1)创建函数
|
函数声明 function fn1(){ } |
|
函数表达式 var fn2=function(参数){ 函数体; } 变量名就是函数的名称 |
对比函数声明和函数表达式的区别
函数声明创建函数存在提升,可以在任意位置创建;
函数表达式使用变量创建的,只是存在变量提升,不存在函数提升,只能先创建,再调用。
(2)匿名函数自调用
目的:创建函数作用域包裹起来,防止污染全局。
|
(function(形参列表){ //函数体中的变量和函数不能被外部访问 })(实参列表); |
(3)回调函数
把匿名函数以实参的形式传递,意味着形参就是传递的匿名的函数名称
|
function fn(a){ //调用fn的时候,匿名函数赋值给参数a,a就是函数名称 a() //执行传递的匿名函数函数体中的代码 } fn( function(){ ... } ); |
3.全局函数
parseInt()/parseFloat()/isNaN()
encodeURI() 对网址中的汉字进行编码
decodeURI() 对已经编码网址进行解码
isFinite() 判断一个值是否为有限值
是->true 不是-false
2/0 ->Infinity(无穷) 0/2 ->0
eval() 执行字符串中的表达式
eval('1+2') //3
4.对象
属于引用类型数据
对象:是一组属性(property)和方法(method)的集合
一台电脑: 属性有颜色、尺寸、品牌、内存大小...方法有看视频、上网、敲代码..
一辆汽车: 属性有颜色、长度、品牌、空间大小...方法有代步,拉货、撞人...
万物皆对象
(1)JS中的对象
内置对象: JS提供的
宿主对象: 根据不同的执行环境划分
自定义对象: 自己创建的对象
(2)创建自定义对象
对象字面量
内置构造函数
自定义构造函数
(3)对象字面量创建对象
使用大括号创建空对象
属性名和属性值之间用冒号隔开
多组属性之间用逗号隔开
属性名中的引号可加可不加,如果含有特殊字符必须加
(4)访问对象中的属性
对象.属性名
对象['属性名']
如果访问的属性名不存在,返回undefined
(5)内置构造函数创建对象
new Object() 创建一个空对象
需要单独为对象添加每一个属性
(6)遍历对象中的属性
访问对象中的每一个属性
|
for(var key in 对象){ key 代表对象中的每个属性名 对象[key] 通过属性名或者对应属性值 } |
JS的函数和对象一的更多相关文章
- js 原型 函数和对象的关系
函数就是对象的一种 instanceof 可以做判断 var fn = function(){}; fn instanceof Object //true Object构造函数的prototype ...
- JS的函数和对象三
复习 判断是否含有某个属性 对象.属性名 === undefined 对象.hasOwnProperty('属性名') '属性名' in 对象 方法 { say:function(){ this ...
- JS的函数和对象二
复习 递归,在函数内部调用自身 return 匿名函数 function(){ } 创建函数,函数表达式 var fn=function(){ } 自调用 (function(){ ...
- js关于函数和对象的概念
<script type="text/javascript"> function func1(fn){ if(typeof(fn)=="function&qu ...
- JS的函数和对象四
复习 数组 toString/join/concat/slice/splice/reverse/sort/ push/pop/unshift/shift 字符串 new String(2) / S ...
- JS中函数参数和函数返回值的理解
函数本质就是功能的集合 JS中函数是对象,因此,函数名实际上仅仅是一个指向函数对象的指针,不会与某个函数绑定,所以,JS中没有重载(重载就是通过传递不同类型的参数,使两个相同函数名的函数执行不同的功能 ...
- 对JS中函数的理解
函数本质就是功能的集合 JS中函数是对象,因此,函数名实际上仅仅是一个指向函数对象的指针,不会与某个函数绑定,所以,JS中没有重载(重载就是通过传递不同类型的参数,使两个相同函数名的函数执行不同的功能 ...
- 聊聊传统oo和js的某些对比——对象/函数/new关键字等
自己的学习记录,写的短点可以以后短时间内理清一些疑惑,看前要求你至少了解js中关于原型链等基本概念,因为文章直接以总结的形式理出知识点,没有去解释一些基本的概念! 1.1.熟记两句话,预预热 1. 函 ...
- JS中的函数,Array对象,for-in语句,with语句,自定义对象,Prototype
一)函数 A)JS中的函数的定义格式: function add(a,b) { var sum = a+b; document.write("两个数的和是:" + sum); // ...
随机推荐
- PHP扩展Swoole的代码重载机制
大家都知道Swoole的性能在PHP界还算不错,同样都是PHP为什么呢,我专门研究了下. 几个概念: 1) sapi:可以简单的理解为php引擎对外的一个统一接口,使得php可以和外部程序进行交互 ...
- 【Django】runserver 0.0.0.0:0 后,究竟发生了什么
WSGI协议 Django是遵循WSGI协议设计的 WSGI协议主要包括server和application两个部分: WSGI server:负责从客户端接收请求,将request转发给applic ...
- Shutdown SpringBoot App
文章目录 Shutdown Endpoint close Application Context 退出SpringApplication 从外部程序kill App Shutdown SpringBo ...
- Libra教程之:数据结构和存储
文章目录 存储的数据结构 账本历史 账本状态 账户 事件 前面的文章我们知道,libra会把所有的数据都存储在账本中.为了方便业务逻辑和数据的校验,这个存储是以特定的数据结构来实现的,这里我们叫做验证 ...
- vue2.x学习笔记(三十一)
接着前面的内容:https://www.cnblogs.com/yanggb/p/12683075.html. 安全 现在的企业都比较在意信息系统的安全问题,在使用vue的过程中也要注意这一点. 报告 ...
- 【Linux常见问题】CentOS 6 root用户密码忘记,找回密码方法
1.Linux的root密码修改不像Windows的密码修改找回,Windows的登录密码忘记需要介入工具进行解决.CentOS6和CentOS7的密码方法也是不一样的,具体如下: 2.centos ...
- Java泛型和编译优化的一个例子
public class Main { public static void main(String[] args) { ArrayList<String> strList = new A ...
- 《高性能Linux服务器构建实战》——第1章轻量级HTTP服务器Nginx
第1章 轻量级HTTP服务器Nginx本章主要介绍Nginx的配置管理和使用.作为一个轻量级的HTTP服务器,Nginx与Apache相比有以下优势:在性能上,它占用很少的系统资源,能支持更多的并发连 ...
- 快放弃你的管家软件吧! Part 2 强制删除
在Windows系统中,难免会遇到用常规方法无法删除文件的情况. 经常有遇到过一些情况? 软件卸载了,有些文件夹就是删不掉,提示被占用,mmp,这时候你肯定想到了360文件粉碎机! mmp,我就删个文 ...
- JAVA大数--POJ 1715 大菲波数
Problem Description Fibonacci数列,定义如下: f(1)=f(2)=1 f(n)=f(n-1)+f(n-2) n>=3. 计算第n项Fibonacci数值. Inp ...