JS函数和对象(一)
在本文章中,将对JS中的函数和对象进行一些讲解,不对之处还请之处
一.JS中的函数
1.1无参函数
其形式如下代码所示
function box(){
alert("我是一个函数,只有被调用才会执行");
}
box();
运行结果如图1.1
图1.1
1.2有参函数
有参函数其形式如下
function box(name,age){
alert("你的名字是"+name+",年龄为"+age);
}
box("李大宝",22);
运行结果如图1.2
图1.2
1.3return的用法
其形式如下
function box(){
return "哈哈哈哈"; //return 相当于把这句话字符串返回回来
}
//打印出函数调用返回回来的结果
alert(box()); //box() 调用,相当于box = 哈哈哈哈
运行结果如图1.3
图1.3
1.4return有参数的函数
其形式如下
function box(name,age){
return "你的名字是"+name+",年龄为"+age;
}
alert(box("李大宝",22));
// 也可以把函数的返回值赋值给一个变量,然后通过变量操作
var strinfo = box("李大宝",23);
alert(strinfo);
运行结果如图1.4
图1.4
其中,return运行中需注意一些问题:当一个函数中有多个return,遇到第一个return,就会终止继续往下执行,第一个return未赋值,则返回undefined
举例如下
function box(){
return 10;
return 100; //当一个函数遇到第一个return,就会终止继续往下执行,
//第一个return未赋值,则返回undefined
}
alert(box());
运行结果如图1.5
图1.5
1.5arguments对象
其形式如下
function box(){
return arguments[0]+"|"+arguments[1]+"|"+arguments[2]+"|"+arguments[3];
}
alert(box("李大宝",22,"船舶专业","未婚"));
运行结果如图1.6
图1.6
1.6利用arguments动态求和
其代码如下
function box(){
var sum = 0;
for(var i=0;i<arguments.length;i++){
sum+=arguments[i];
}
return sum;
}
alert(box(1,2,4));
运行效果如图1.7
图1.7
二.JS中的对象
2.1创建一个新的对象
其形式如下
var box = new Object(); //创建一个新的对象
box.name = "李大宝";
alert(box.name);
运行效果如图2.1
图2.1
其中new可以省略
//new 可以省略
var box = Object();
alert(box);
运行效果如下图2.2
图2.2
可用{}创建一个新对象
var box = {}; //字面量方式创建的对象
alert(box);
效果为图2.3
图2.3
2.3字面量对象的属性
var box = {
name : "李大宝", //字面量对象封装数据
age :22
};
alert(box.age);
效果如下图2.4
图2.4
也可以以另一种声明方法
var box = {
"name" : "李大宝", //字面量对象封装数据
"age" :22 //属性可以用字符串形式
};
alert(box.age);
效果图为2.5
图2.5
2.4给对象创造方法
//给对象创造方法 var box = {
name : "李大宝",
age : 22,
run: function(){ //匿名函数
return"123";
}
};
alert(box.run()); //调用函数,如果没有(),会打印代码
//有()才会打印返回值
效果如图2.6
图2.6
2.5delete属性
var box = {
name:"李大宝"
}
alert(box.name); //delete,删除属性
delete box.name;
alert(box.name);
其效果如下
图2.7
应用举例:自变量对象的传参
function box(obj){
alert(obj.name);
alert(obj.age);
alert(obj.hobby);
}
var obj = {
name:"李大宝",
age :"22", //封装对象属性,不会乱
hobby:"敲代码"
}; box(obj);
效果图如下图2.8
图2.8
.
.
.
.
由于时间关系,本次讲解到此为止,下一篇博文将继续介绍函数的对象问题
<独创声明,未经允许不得转发!!!>
JS函数和对象(一)的更多相关文章
- node js 函数和对象
1.函数 1.1匿名函数 函数声明 function fn(){ } 函数表达式 var fun=function(){ } 函数名称和函数名称()的区别 fun/fn fun()/fn() ...
- 深入理解js——函数和对象的关系
函数也是对象,但是函数却不像数组--数组是对象的一种,它是对象的一个子集.函数和数组之间不是单纯的包含与被包含的关系,它们之间有点像鸡生蛋蛋生鸡的逻辑. 来例子:function Fn(){ this ...
- js函数事件对象
每个函数都有4个默认对象 arguments 保存着实际传入的参数,集合列表 return 有两个功能,打断函数和返回函数值 this 谁调用的函数,this就是谁 event 事件对象 事件 box ...
- JS函数和对象
1.函数 isNaN(数据)/parseInt/parseFloat/Number/prompt... 函数分为系统函数和自定义函数 function: 功能体,函数(方法),可以接受若干个数据,返回 ...
- JS中的对象和方法简单剖析
众所周知,在js中对象就是精髓,不理解对象就是不理解js. 那么什么事js中的对象呢? 在js中,几乎一切皆对象: Boolean ,String,Number可以是对象(或者说原生数据被认作对象): ...
- JS中的函数,Array对象,for-in语句,with语句,自定义对象,Prototype
一)函数 A)JS中的函数的定义格式: function add(a,b) { var sum = a+b; document.write("两个数的和是:" + sum); // ...
- 【JS小技巧】JavaScript 函数用作对象的隐藏问题
用户反馈 @消失的键盘 在论坛反馈了一个问题,在 AppBoxMvc 中的 Title 模型中,如果将 Name 属性改名为小写的 name 属性,就会报错: 因为这是一个 ASP.NET MVC 的 ...
- 【JS小技巧】JavaScript 函数用作对象的隐藏问题(F.ui.name)
用户反馈 @消失的键盘 在论坛反馈了一个问题,在 AppBoxMvc 中的 Title 模型中,如果将 Name 属性改名为小写的 name 属性,就会报错: 因为这是一个 ASP.NET MVC 的 ...
- 关于js函数对象的理解
js中函数和对象的关系: 什么是对象?根据W3C上面的解释JS中所有事物都是对象,对象是拥有属性和方法的数据,由此可以看出除了基 本值类型不是对象(number.string.Boolean.Unde ...
随机推荐
- UGUI ScrollRect 性能优化
测试环境 操作系统:Windows8.1 开发工具:Unity5.5.2 1.问题描述,在实际开发过程中经常会使用ScrollRect实现滚动列表,当初次加载数据比较多的情形时,Unity3D会出现比 ...
- 【JAVAWEB学习笔记】25_Linux基础
Linux基础 学习目标 1.了解Linux的简介与安装 2.掌握Linux常用的命令 3.掌握Linux系统上JDK.Mysql.Tomcat的安装 一.Linux的简介 1.Linux的概述 Li ...
- 数据结构与算法系列研究五——树、二叉树、三叉树、平衡排序二叉树AVL
树.二叉树.三叉树.平衡排序二叉树AVL 一.树的定义 树是计算机算法最重要的非线性结构.树中每个数据元素至多有一个直接前驱,但可以有多个直接后继.树是一种以分支关系定义的层次结构. a.树是n ...
- axis2 和 xfire 接口调用问题排查
背景: 1个运营商厂家开发人员离职,我们为了上线对接接口,迁就对方客户端调用.对方客户端框架用的是xfire.调用方式基本为: Service serviceModel = new ObjectS ...
- MysqlRouter 实现mysql5.6读写分离
下载,安装 [root@localhost src]# cd /usr/local/src/ [root@localhost src]# wget http://dev.mysql.com/get ...
- linux下查看账号密码的过期时间和设置时间
[root@localhost myshell]# chage -l Usage: chage [options] [LOGIN] Options: -d, --lastday LAST_DAY se ...
- canvas——路径搜索
在前一篇博客中随机生成迷宫,现在就以随机生成的迷宫为地图,开始寻找路径. 迷宫寻路也可以使用DFS,BFS,但常见的是A*算法,它是启发式搜索算法的一种,效率相比前两者也更高.接下来以A*算法为例,迷 ...
- 逆向libbaiduprotect(四)
百度加固libbaiduprotect.so自身对只读字符串进行了加密保护,防止成为破解和逆向的切入口.一般地认为,只要找出这个解密算法就可以对.rodata段的只读字符串进行破解,从而窥探程序的意图 ...
- nginx反向代理cas server之1:多个cas server负载均衡配置以及ssl配置
系统环境采用centOS7 由于cas server不支持session持久化方式的共享,所以请用其他方式代替,例如:组播复制. 为什么不支持session持久化:http://blog.csdn.n ...
- 解决Ubuntu SMPlayer播放视频无声音问题
问题:Ubuntu Kylin 14.04 系统默认装好之后,smplayer播放视频都是正常的,但最近可能由于一些误设置,导致smplayer播放任何格式的视频都无声.解决方法:由于ALSA是Lin ...