复习

递归,在函数内部调用自身  return

匿名函数  function(){   }

创建函数,函数表达式  var fn=function(){   }

自调用   (function(){  函数作用域;  })();

回调函数

function add(a){  a()  }

add(function(){ 多行代码; });

全局函数

parseInt/parseFloat/isNaN/encodeURI/decodeURI

isFinite/eval  '1==3'

对象

内置对象/宿主对象/自定义对象

对象字面量 {}/内置构造函数 new Object()/自定义构造函数

对象.属性名   对象['属性名']

遍历对象属性  枚举

for(var key in 对象){    }

1.判断对象中是否含有某个属性

对象.属性名 === undefined  true->不存在  false->存在

对象.hasOwnPropery('属性名')  true->存在   false->不存在

'属性名'  in  对象   true->存在   false->不存在

2.对象中的方法

var person={

ename: 'tom',

say: function(){

this.ename  //访问当前对象的属性名,this指代当前所在的对象

}

}

person.say()   //调用对象中的方法

数组

是有多个元素组成的集合,每个元素就是一个数据

3.创建数组

(1)数组字面量

[ 元素1, 元素2... ]

(2)访问数组中的元素

数组[下标]   下标从0开始,不存在的元素返回undefined

(3)内置构造函数

new Array( 元素1,元素2... )

new Array(3)  初始化元素个数为3,可以添加更多个元素

(4)数组的长度

数组.length  获取数组中元素的个数

在数组的末尾添加元素

数组[ 数组.length ] = 值;

(5)数组的分类

分为关联数组和索引数组

索引数组以0以上的整数作为下标

关联数组以字符串作为下标,只能单独的添加元素

(6)遍历数组

for-in

for(var key in 数组){

key  下标

数组[key]  下标对应的元素

}

既可以遍历关联数组,也可以遍历索引数组

循环

for(var i=0;i<数组.length;i++){

i 下标

数组[i]  下标对应的元素

}

只能遍历索引数组

(7)数组API(方法)

API 应用程序编程接口,预定义好的一些方法或者函数

toString()  将数组中的元素按逗号组合成字符串

join('-')  将数组中的元素按指定的字符组合成字符串,默认是逗号

concat(arr1,arr2)  拼接多个数组

slice(start,end)  截取数组中的元素,start开始的下标,end结束的下标,不包含end本身,如果是负数,表示倒数。end为空截取到最后。

练习: 创建数组a~g组成,每个字符是一个元素;分别截取cd,f,b;把截取的结果拼接成一个新数组

splice(start, count, value1,value2..)  删除数组中的元素,start开始的下标,count删除的长度,value删除后补充的元素;count为空删除到最后,start为负数表示倒数;返回删除的元素,原数组会发生变化。

JS的函数和对象二的更多相关文章

  1. JS的函数和对象一

    1.递归 在函数的内部调用自身,默认是一个无限循环. 2.匿名函数 没有名称的函数  function(){   } (1)创建函数 函数声明 function fn1(){   } 函数表达式 va ...

  2. js 原型 函数和对象的关系

    函数就是对象的一种  instanceof  可以做判断 var fn = function(){}; fn instanceof Object //true Object构造函数的prototype ...

  3. JS的函数和对象三

    复习 判断是否含有某个属性 对象.属性名 === undefined 对象.hasOwnProperty('属性名') '属性名' in 对象 方法  { say:function(){  this ...

  4. js关于函数和对象的概念

    <script type="text/javascript"> function func1(fn){ if(typeof(fn)=="function&qu ...

  5. JS的函数和对象四

    复习 数组 toString/join/concat/slice/splice/reverse/sort/ push/pop/unshift/shift 字符串 new String(2)  /  S ...

  6. JS中函数参数和函数返回值的理解

    函数本质就是功能的集合 JS中函数是对象,因此,函数名实际上仅仅是一个指向函数对象的指针,不会与某个函数绑定,所以,JS中没有重载(重载就是通过传递不同类型的参数,使两个相同函数名的函数执行不同的功能 ...

  7. 对JS中函数的理解

    函数本质就是功能的集合 JS中函数是对象,因此,函数名实际上仅仅是一个指向函数对象的指针,不会与某个函数绑定,所以,JS中没有重载(重载就是通过传递不同类型的参数,使两个相同函数名的函数执行不同的功能 ...

  8. JavaScript学习笔记(二)——闭包、IIFE、apply、函数与对象

    一.闭包(Closure) 1.1.闭包相关的问题 请在页面中放10个div,每个div中放入字母a-j,当点击每一个div时显示索引号,如第1个div显示0,第10个显示9:方法:找到所有的div, ...

  9. JavaScript学习总结(二)——闭包、IIFE、apply、函数与对象

    一.闭包(Closure) 1.1.闭包相关的问题 请在页面中放10个div,每个div中放入字母a-j,当点击每一个div时显示索引号,如第1个div显示0,第10个显示9:方法:找到所有的div, ...

随机推荐

  1. openssl 查看证书

    查看证书 # 查看KEY信息 > openssl rsa -noout -text -in myserver.key # 查看CSR信息 > openssl req -noout -tex ...

  2. js的属性监听

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8">     <title ...

  3. 基于docker-compose部署LNMP

    一.配置环境 [root@docker ~]# systemctl stop firewalld[root@docker ~]# iptables -F[root@docker ~]# setenfo ...

  4. 【高并发】由InterruptedException异常引发的思考

    写在前面 InterruptedException异常可能没你想的那么简单! 前言 当我们在调用Java对象的wait()方法或者线程的sleep()方法时,需要捕获并处理InterruptedExc ...

  5. MYSQL 索引汇总

    1.MySQL索引类型 先分以下类,MYQL有两大类索引:聚集索引和非聚集索引(只考虑mysql innodb) 聚集索引:在有主键的情况下,主键为聚集索引,其他都是非聚集索引             ...

  6. google proto buf学习

    2019独角兽企业重金招聘Python工程师标准>>> protobuf是Google开发的一个序列化框架,类似XML,JSON,基于二进制,比传统的XML表示同样一段内容要短小得多 ...

  7. 如何理解Java的值传递

    结论 为了加深印象,先把结论放在文章开头. ++Java中只有值传递++. 形参与实参 在理解Java的值传递 实参Argument 实际参数,主调用函数传递给调用函数的参数 形参Parameter ...

  8. windows下git commit使用gvim编辑器

    安装gvim 下载安装包:ftp://ftp.vim.org/pub/vim/pc/gvim80-586.exe 安装后将安装路径添加到环境变量Path中 设置编码支持中文 在安装路径下的_vimrc ...

  9. 在linux上部署自己开发的web项目

    在linux上部署自己开发的web项目 前言:相信有很多做开发的小伙伴和我之前一样,只会在windows环境下,利用开发工具开发运行web项目,但是却不知道怎么把开发好的项目部署到linux服务器上去 ...

  10. Java笔记(day14-17)

    集合类的由来: 对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定. 就使用集合容器进行存储. 集合特点: 1,用于存储对象的容器. 2,集合的长度是可变的. 3,集合中不可以存储基本数据类 ...