JavaScript基础笔记二
一、函数返回值
1.什么是函数返回值
函数的执行结果
2. 可以没有return // 没有return或者return后面为空则会返回undefined
3.一个函数应该只返回一种类型的值
二、可变参(不定参)arguments
function sum (a,b)
{
var result=0;
var i=0;
for(i=0;i<arguments.length;i++)
{
result+=arguments(i);
}
alert(resulet);
}
sum(12,5,7,5,5,6,7,3,7)
案例:取非行间样式
案例所需知识
因为直接使用style只能获取定义在行内的样式,因此取非行间样式需要用到下面的属性—获取计算后的样式(当前样式/最终样式)
currentStyle //IE下可用,无法取得复合样式
GetComputedStyle() //FF下可用
样式可分为:
基本样式 如:width
复合样式 如:background //有color,posiition,repeat,image等属性
简单兼容如下:
oDiv=getElementById("div1");
if(oDiv.currentStyle)
{
//IE
alert(oDiv.currentStyle.width);
}
else
{
//FF
alert(getComputedStyle(oDiv,false).width);
}
简单的函数封装:
function getStyle(obj,attr)
{
if(obj.currentStyle)
{
return obj.currentStyle[attr];
}
else
{
return getComputedStyle(obj,false)[attr];
}
}
三、数组基础
1.如何定义
方法一 var arr=[1,2,3,4];
方法二 var new Array(1,2,3,4);
无区别一般用方法一代码短
2.数组的属性
length
既可以获取,又可以设置
例:快速清空数组:arr.length=0;
3.数组使用原则
数组应该只存一种类型的变量
四、数组常用方法
1.添加
push(元素) 尾部添加 arr.push(5)
unshif(元素) 头部添加
2.删除
pop() 从尾部弹出
shift() 从头部弹出
3.排序
sort([比较函数])排序一个数组
(1)排序字符串(默认排序字符串)
var arr1['small','hello','you','big'];
var arr2[34,100,98,4];
arr1.sort();
arr2.sort();
alert(arr1);
alert(arr2);
结果:big,hello,small,you
100,34,4,98
(2)排序数字
arr2.sort(function(num1,num2){
return num1-num2//从小到大,num2-num1
});
结果:4,34,98,100
4.转换类
(1)concat连接数组
var arr1[1,2,3,4];
var arr2[5,6,7,8];
alert(arr1.concat(arr2));
结果:1,2,3,4,5,6,7,8
(2)join(分隔符)
用分隔符,组合数组元素,生成字符串
alert(arr1.join("-"));
结果:1-2-3-4
(3)split与join相反
var arr3='12-5-7-8"
var arr3=str.split(‘-’);
alert(arr3[0]);
结果:12
5.插入、删除
splice(开始的位置,长度,元素)
var arr[1,2,3,4,5,6];
(1)中间删除
arr.splice(2,3)
结果:126
(2)中间插入
arr.splice(5,0,‘a’,'b','c')
结果:123456abc
(3)中间替换
arr.splice(0,2,‘a’,'b','c')
结果:ab345
原理:先删除再插入
博客园:JavaScript基础笔记二
JavaScript基础笔记二的更多相关文章
- JavaScript基础笔记一
一.真假判断 真的:true.非零数字.非空字符串.非空对象 假的:false.数字零.空字符串.空对象.undefined 例: if(0){ alert(1) }else{ alert(2) } ...
- JavaScript基础笔记集合(转)
JavaScript基础笔记集合 JavaScript基础笔记集合 js简介 js是脚本语言.浏览器是逐行的读取代码,而传统编程会在执行前进行编译 js存放的位置 html脚本必须放在&l ...
- Javascript学习笔记二——操作DOM
Javascript学习笔记 DOM操作: 一.GetElementById() ID在HTML是唯一的,getElementById()可以定位唯一的一个DOM节点 二.querySelector( ...
- JavaScript基础笔记(十二)Ajax
Ajax 一.XMLHttpRequest对象 一)XHR用法 var xhr = new XMLHttpRequest(); //open()方法,参数一:发送方法,参数二:请求的URL,参数三:是 ...
- JavaScript基础笔记(二)变量、作用域和内存问题
变量.作用域和内存问题 一.基本类型和引用类型的值 基本类型值:简单的数据段 引用类型值:由多个值构成的对象 基本类型是按值访问的,引用类型是按引用访问的. 不能给基本类型的值添加属性,尽管不会报错. ...
- JavaScript基础笔记(十)表单脚本
表单脚本 一.表单基础知识 JavaScript中表单对应的是HTMLFormElement类型,该类型继承自HTMLElement类型. 通过document.forms可以获得所有表单元素,通过数 ...
- JavaScript基础笔记(八)DOM扩展
DOM扩展 一.选择符API Selectors API是由W3C发起制定的一个标准,致力于让浏览器原生支持CSS查询. 一)querySelector() 在Document和Element类型实例 ...
- JavaScript基础笔记(一)基本概念
基本概念 一.语法 一)区分大小写 二)标识符 书写规则同Java 三)注释 略 四)严格模式 1.在整个脚本中启用严格模式:在顶部添加 "use strict" 2.指定函数在严 ...
- JavaScript学习笔记(二)——闭包、IIFE、apply、函数与对象
一.闭包(Closure) 1.1.闭包相关的问题 请在页面中放10个div,每个div中放入字母a-j,当点击每一个div时显示索引号,如第1个div显示0,第10个显示9:方法:找到所有的div, ...
随机推荐
- labview 变体数据类型
变体数据类型是LabVIEW中多种数据类型的容器.将其它数据转换为变体时,变体将存储数据和数据的原始类型,保证日后可将变体数据反向转换. 例如,如将字符串数据转换为变体,变体将存储字符串的文本,以及说 ...
- Codeforces Round #257 (Div. 1) C. Jzzhu and Apples (素数筛)
题目链接:http://codeforces.com/problemset/problem/449/C 给你n个数,从1到n.然后从这些数中挑选出不互质的数对最多有多少对. 先是素数筛,显然2的倍数的 ...
- Scala List的排序函数sortWith
//原始方法: //val list=List("abc","bcd","cde") scala> list.sortWith( (s ...
- CSS实现子级窗口高度随低级窗口高度变化
纯粹使用使用height:100%;或者height:auto;来定义内部容器自适应高度,都无法实现让内部容器高度随着外部父容器高度变化而变化,所以我们必需要使用position绝对定位属性来配合协助 ...
- 树莓派加入定时任务实现花生壳定时重启(linux的定时任务)
由于花生壳在linux下不稳定,联系开机一个星期左右会挂掉,所以要使用定时任务实现每小时刷新一次/启动一次. 使用的是linux下的定时任务crontab去实现. 实现步骤: 1.编辑/etc/cro ...
- JavaScript- 获取经度纬度
昨天获得一个小需求,需要取地理位置. 通过以下的JS能获得经度和纬 if(navigator.geolocation) { navigator.geolocation.getCurrentPositi ...
- 使用SVG Path绘图
最近一个项目,需要做个Web版本的设计器,用来进行工厂流水线布局的设计. 项目中采用了SVG.JS来做,但是以前流水线是采用单纯的画线的方式实现.客户提出希望用不同的底纹表示不同的流水线,经过一番调查 ...
- VB.NET中使用Linq TO SQL添加数据后获得自增长列ID
VB.NET中使用Linq TO SQL添加数据后获得自增长列ID: Dim tempOrdre As New Order With { .CustomerID = cmbCustomerName.S ...
- 关于Vim的问题s
2013-11-23 17:29:45 1.关于.swp文件 swap对于保护非正常退出是有好处的,但从最开始使用vim就发现的一个问题十分恼火!非正常退出再进入后选择了恢复R,然后编辑正常保存正常退 ...
- 理解extern
extern有两层含义:表示声明和extern C 1.C++分为编译期和运行期,C++是分别单独编译,编译期可认为有三个步骤:a.预编译进行文本替换,将源文件(cpp文件)生成编译单元:b.编译单元 ...