javascript每日一练(二)——javascript(函数,数组)
一、函数
- 什么是函数
function show(){}//不带参数
function show(){return 123;}//不带参数,有返回值
function show(arg1, arg2,...){}//可带一个或多个参数
function show(a, b){//带参数,并有返回值
return a+b;
}
函数实例:获取元素样式
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style>
#div1{ width:100px; height:100px; background:red;}
</style>
<script>
//获取元素样式
function getStyle(obj, attr){
if(obj.currentStyle){
return obj.currentStyle[attr];
}else{
return getComputedStyle(obj, false)[attr];
}
}
window.onload = function(){
var oDiv = document.getElementById('div1');
alert(getStyle(oDiv, 'width'));
alert(getStyle(oDiv, 'color'));
};
</script>
</head>
<body>
<div id="div1" style="color:#fff">color</div>
</body>
</html>
2. 函数的参数(不定参,可变参)
//求和
function add(){
var result = 0;
for(var i=0;i<arguments.length;i++){
result += arguments[i];
}
return result;
}
alert(add(1,2,3));
二、数组
- 数组定义
var arr = [1, 2, 3, 4, 5]; var arr2 = new Array(1, 2, 3, 4, 5);
2. 属性:length
既可以获取数组长度,也可以设置长度,可以用来清空数组,如:var arr = [1, 2, 3, 4, 5]; arr.length = 0;
数组中应只存一种数据类型
3. 数组方法:
添加删除:push()从末尾添加, pop()从末尾移除; unshift()从首位添加, shift()从首位移除;
4. 排序转换:
var arr = [2, 44, 118, 90, 1, 33, 29];
arr.sort(function(num1, num2){
return num1-num2;
});
alert(arr);
数组连接:concat(); arr1.concat(arr2);
数组join:用分隔符把数组转换成字符串 var arr = [1, 3, 4, 5, 6]; var str = arr.join('-'); //1-3-4-5-6;
字符串split:用分隔符把字符串拆分成数组 var str = '1-2-3-4-5'; var arr = str.split('-'); //[1,2,3,4,5];
5. 数组的插入删除(splice)
splice(index, count, elem1, elem2, ..., elemN); //开始位置, 长度,
var arr = [2, 44, 118, 90, 1, 33, 29]; //删除 //arr.splice(2, 2); //插入 //arr.splice(2, 0, 100) //替换 //arr.splice(2, 1, 99); alert(arr);
javascript每日一练(二)——javascript(函数,数组)的更多相关文章
- JavaScript学习总结(十二)——JavaScript编写类
在工作中经常用到JavaScript,今天总结一下JavaScript编写类的几种写法以及这几种写法的优缺点,关于JavaScript编写类的方式,在网上看到很多,而且每个人的写法都不太一样,经常看到 ...
- JavaScript学习笔记(二)——函数和数组
第二章 函数简介 1 第一个函数示例 <script language="JavaScript" type="text/JavaScript"> f ...
- javascript每日一练(十二)——运动框架
运动框架 可以实现多物体任意值运动 例子: <!doctype html> <html> <head> <meta charset="utf-8&q ...
- javascript每日一练(十)——运动二:缓冲运动
一.缓冲运动 实现原理:(目标距离-当前距离) / 基数 = 速度(运动距离越大速度越小,运动距离和速度成反比) (500 - oDiv.offsetLeft) / 7 = iSpeed; 需要注意: ...
- javascript每日一练(七)——事件二:键盘事件
一.键盘事件 onkeydown触发, keyCode键盘编码 ctrlKey altKey shiftKey 键盘控制div移动 <!doctype html> <html> ...
- javascript每日一练(四)——DOM二
一.DOM的创建,插入,删除 createElement(标签名) appendChild(节点) insertBefore(节点,原有节点) removeChild(节点) <!doctype ...
- javascript每日一练(一)——javascript基础
一.javascript的组成 ECMAScript DOM BOM 二.变量类型 常见类型有:number, string, boolean, undefined, object, function ...
- Javascript异步编程之二回调函数
上一节讲异步原理的时候基本上把回掉函数也捎带讲了一些,这节主要举几个例子来具体化一下.在开始之前,首先要明白一件事,在javascript里函数可以作为参数进行传递,这里涉及到高阶函数的概念,大家可以 ...
- javascript 学习总结(二)Array数组
1.数组常用方法 var colors = ["red", "blue", "green"]; //creates an array wit ...
随机推荐
- 【随手记-有空整理】使用PHPMailer和QQ邮箱实现邮件的自动发送
使用PHPMailer和QQ邮箱发送邮件时,在密码一栏里要填写QQ邮箱提供的授权码,而不是邮箱的登录密码 授权码获取可参考:http://service.mail.qq.com/cgi-bin/hel ...
- python中的异常如何处理
一.异常基础 在编程程序出现bug时一般不会将错误信息显示给用户,而是现实一个提示的页面. try: #正常逻辑代码 input = raw_input("输入数字:") data ...
- 转: sublime text 2 前端编码神器-快捷键与使用技巧介绍
代码编辑器或者文本编辑器,对于程序员来说,就像剑与战士一样,谁都想拥有一把可以随心驾驭且锋利无比的宝剑,而每一位程序员,同样会去追求最适合自己的强大.灵活的编辑器,相信你和我一样,都不会例外. 如果说 ...
- Cygwin ssh
http://www.evalumation.com/blog/86-cygwin-windows7-sshd
- Maxicode码
Maxicode的缘起和发展 1980年代晚期,美国知名的UPS(United Parcel Service)快递公司认知到利用机器辨读资讯可有效改善作业效率.提高服务品质,故从1987年开始着手於机 ...
- struts ModelDriven
在表单提交的时候传值是这样,name=admin.username name=admin.password,然后在action中定义属性admin生成get和set 也可以实现ModelDriven这 ...
- fedora21 codeblocks在编辑装态下无法输入
来自:http://forum.ubuntu.com.cn/viewtopic.php?f=88&t=284409 用codeblocks,突然发现怎么敲键盘都不能输入 搜索后得知: Co ...
- UVA 270 Lining Up 共线点 暴力
题意:给出几个点的位置,问一条直线最多能连过几个点. 只要枚举每两个点组成的直线,然后找直线上的点数,更新最大值即可. 我这样做过于暴力,2.7s让人心惊肉跳...应该还能继续剪枝的,同一直线找过之后 ...
- 在主函数中提示用户输入用户名和密码。另写一方法来判断用户输入是否正确。该方法分别返回一个bool类型的登录结果和和一个string类型的登录信息。如登录成功,返回true及“登录成功”,若登录失败则返回false及“用户名错误”或“密码错误”(使用out参数)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- myeclipse8.5如何注册,转自他出
Step: 1.建立一个任意名称的Java Project 2.在该工程中建立一个名文MyEclipseGen的Java文件(MyEclipseGen.java) 3.运行下面的代码,会在控制台出现& ...