JavaScript的函数和对象介绍
一、JavaScript中的函数
1、函数的概述
JavaScript中的函数是一段可执行代码的合集,在需要执行的时候可以在方法名之后添加一对小括号执行方法。是一段可执行的字符串。
2、函数中隐藏的属性arguments
在函数中有一个隐藏的属性arguments,其中保存的是用户输入的全部参数,可以通过arguments.length获取用户输入参数的长度。如果用户输入的参数数量大于函数现有的参数长度,多余的参数没有被抛弃,利用arguments依然可以获取到用户输入全部参数。如果用户的输入参数数量小于函数现有的参数长度,则缺少的参数会使用undefined来赋值通过arguments也可以获取用户传入的参数。
3、函数的使用
在JavaScript的函数中可以认为函数是一种特殊的变量,这个变量可以作为参数使用,也可以作为方法使用。
a、当作为参数使用时,直接书写方法名即可,这时书写的方法名就是代表当前方法的变量。
b、作为方法使用时,则需要再方法名之后添加上一对小括号,这时这个函数就会执行函数中的函数体。
4、函数的三种定义方式
普通方法定义函数
function mx(a,b) { for(var i =0;i<arguments.length;i++) {
console.log(arguments[i]);
}
}
mx(1,2,3);
mx(1);
动态函数定义
动态函数定义方式,就是将函数列表中先书写全部参数,最后一个参数需要书写方法体。(动态函数最后一个参数位置是填写方法体的位置)
var mx = new Function("a","b","return a + b");
console.log(mx(2,3));
匿名函数定义(直接量函数定义)
var mx = function(a,b){
return a+b;
}
mx(3,4);
二、JavaScript中的对象
1、JavaScript对象的概述
JavaScript是一门脚本语言。无需编译,直接解释执行;它是基于对象。js中的对象的本质就是由一个大括号,其中包含任意多个键值对,键值对直接使用逗号隔开,组成的字符串。
2、对象的三种定义方法
无参构造函数创建对象,对象的属性和方法直接在对象后面添加
function Person() { } let p = new Person(); p.name="lisi";
p.age = 18;
p.gender = "male";
p.say = function() {
return this.name + "say。。。";
} console.log(p);
console.log(p.say());
有参构造函数创建对象:将部分属性通过构造函数传入
function Person(name,age) {
this.name = name;
this.age = age;
}
let p = new Person("lisi",18);
p.addr = "beijing";
delete p.name;
console.log(p);
其中删除属性使用delete删除,例如上面删除p对象的属性name:delete p.name。
直接量定义对象:直接在{}中插入键值对定义对象。
var p = {name:"js",age:18,addr:"bj"};
console.log(p);
delete p.name;
console.log(p);
3、JavaScript的对象的另类使用:JSON串
Json本质上就是一段字符串,能够保存较复杂关系的数据,具有良好的数据保存格式,又极为轻量,加之多种代码平台都支持对字符串的处理,所以我们可以使用JSON字符串进行数据的传入,甚至平台传输。
JSON串的使用示例如下:
var data = {
name:"王五",
age:28,
addr:"北京",
grilfriends:[
{name:"貂蝉",age:16,job:"闭月羞花"},
{name:"西施",age:18,job:"沉鱼落雁"}
]
}
console.log(data["grilfriends"][1]["job"]);
当JSON串中的属性是数组对象时,要通过data["grilfriends"]的方式访问;属性为非数组独享时,可以直接通过JSON对象“.”出来,或者使用data["age"]的方式访问。
JavaScript的函数和对象介绍的更多相关文章
- 了解Javascript中函数作为对象的魅力
前言 Javascript赋予了函数非常多的特性,其中最重要的特性之一就是将函数作为第一型的对象.那就意味着在javascript中函数可以有属性,可以有方法, 可以享有所有对象所拥有的特性.并且最重 ...
- JavaScript快速入门-ECMAScript对象介绍
一.概念介绍 在 ECMAScript 中,所有对象并非同等创建的.一般来说,可以创建并使用的对象有三种:本地对象.内置对象和宿主对象. 要理解这三种对象,先要理解宿主环境. 1.宿主环境 一般宿主环 ...
- javaScript的函数(Function)对象的声明(@包括函数声明和函数表达式)
写作缘由: 平时再用js写函数的时候,一般都是以惯例 function fn () {} 的方式来声明一个函数,在阅读一些优秀插件的时候又不免见到 var fn = function () {} 这种 ...
- 转:JavaScript中函数与对象的关系
来自:http://www.nowamagic.net/javascript/js_RelationOfFunctionAndObject.php 在ajax兴起以前,很多人写JavaScript可以 ...
- JavaScript -基础- 函数与对象
一.JavaScript三对象 1.分类方式一 1)ECMAScript JavaScript的ECMA规范 JS本身的对象 2)Dom 操作HTML相关 3)BOM游览器对象 游览器窗口对象,全局的 ...
- Javascript基础--函数(Function对象)
1.函数是一段可执行的代码,函数可多次调用,模块化管理. 2.使用function语句,function funName([arg1][,arg2]....[,argn]){代码块}.所有版本可用,一 ...
- JavaScript -基础- 函数与对象(四) BOM 对象
一.BOM对象 BOM游览器对象模型,可以与游览器对话 BOM下Window对象最重要,还有history.location对象 二.Window对象方法 1.alert提示框 2.confirm c ...
- JavaScript -基础- 函数与对象(三)正则、Match对象
一.正则对象 1.创建方法 1)方式一 var re_obj=new RegExp("\d+","g") 规则+模式(g 全局模式/i 不区分大小写/gi) r ...
- JavaScript -基础- 函数与对象(三)Date对象
一.Date对象 1.创建方法 var date_obj=new Date(); alert(date_obj.toLocaleString()) var date_obj=new Date(&quo ...
随机推荐
- shell脚本中 “set -e” 的作用
#!/bin/bash set -e command 1command 2 每个脚本都应该在文件开头加上set -e,这句语句告诉bash如果任何语句的执行结果不是true则应该退出.这样的好处是防止 ...
- java的基本类型和对应的封装类
封装,是java这门语言的重要核心思想之一,封装也是对面向对象这一思想很好的体现. 在很多情况下,我们需要对数据进行一些转换,如:将一字符串"123"转换成int类型的123,或者 ...
- 「牛客CSP-S2019赛前集训营1」仓鼠的石子游戏
传送门 NowCoder 解题思路 考虑这样一件事:在任何的同一个石圈,后手肯定会输. 证明很简单,手玩一下就可以大致意会. 但是有一种特殊情况,就是大小为1的圈,这种圈就是起到一次交换先后手的作用, ...
- css常用设置
距离左边和上边 style="margin-left:100px;margin-top:10px" 设置相对位置 position:absolute; position:relat ...
- Ecshop系统二次开发教程及流程演示
来源:互联网 作者:佚名 时间:03-01 16:05:31 [大 中 小] Ecshop想必大家不会觉得陌生吧,大部分的B2C独立网店系统都用的是Ecshop系统,很受用户的喜爱,但是由于Ecs ...
- BugFix系列---开篇介绍
这个系列的文章,主要目的在于积累总结实际开发中遇到的错误,记录下来自己的解决思路,用来提升自己. 不出意外,应该会持续不断的记录更新,在整个开发openstack的过程中,抓住机会吸取开源界大牛的 ...
- 五 Hibernate的其他API,Query&Criteria&SQLQuery
Query Criteria SQLQuery Query接口:用于接收HQL,用于查询多个对象 HQL:Hibernate Query Language Query条件查询: Query分页查询: ...
- python2学习------基础语法1 (变量、分支语句、循环语句、字符串操作)
1.变量类型 Numbers(数字):int,float,long String(字符串) List(列表) tuple(元组) dict(字典) bool(布尔):True,False # 删除变量 ...
- Ternsorflow 学习:001-通过例程,初步了解Tensorflow
前言 本章的目的是了解和运行 TensorFlow,在开始之前,让我们先看一段使用 Python API 撰写的 TensorFlow 示例代码,让你对将要学习的内容有初步的印象. 下面这段短小的 P ...
- CodeForces - 869B The Eternal Immortality
题意:已知a,b,求的最后一位. 分析: 1.若b-a>=5,则尾数一定为0,因为连续5个数的尾数要么同时包括一个5和一个偶数,要么包括一个0. 2.若b-a<5,直接暴力求即可. #in ...