(一)回调函数:
是指通过函数参数传递到其他代码的,某一块可执行代码的引用。这一设计允许了底层代码调用在高层定义的子程序。
在抖动函数中,回调函数用于在实现一些功能之后采取的另外的措施,比如div,照片抖动完毕后弹出alert对话框。

(二)字符串:
一、查找字符串中某一位字符
charAt();==>找到第几位对应的字符0-length-1,返回字符
charCodeAt();==>找到第几位对应的字符0-length-1,返回字符的Unicode编码值
String.fromCharCode();==>括号中放入字符编码,返回对应的字符,当需要返回多个字符时,编码值用逗号隔开
常见Unicode对应值:
0-9:48-57;
a-z:97-122;
A-Z:65-90;
注:判断输入的文字是数字时可以用CharCodeAt()判断输入的字符的编码值是否在数字的编码值范围,如果用isNaN();判断不出输入的字符中夹带的空格。
二、查找字符串的位置
indexOf('n')==>返回n对应的下标,找不到返回-1
indexOf('n',3)==>从第三位开始找‘n’所在的位置,找不到返回-1
lastindexOf()==>表示从后往前找,当第二餐为负数时,默认当做0处理
三、字符串的比较
字符串与字符串的比较:按位比较字符中Unicode码的大小==>'1000'>'2'(false)
字符串和数字的比较:隐式转换,将字符串转换成数字进行比较==>'1000'>2(true)
四、字符串截取
substring(,);可以检测两个参数的大小,自动大的放在后边,小的放在前边,负数当做0处理
slice(,);不能自动检测,不交换位置,负数表示从后倒着往前数
五、针对英文字母转换大小写
str.toUpperCase();==>转大写
str.toLowerCase();==>转小写
六、字符串的分割
str.split()
()里不放分割符,等于把str数组放入一个数组里
()里放‘’空字符串,是把str中的每个字符都拆开
()里放的分割切开后,如果第一位或最后一位没有东西,数组会留一个空位
()里的第二参为可选参数,如果为3,则将分割好的数组的前三位放入数组中
七、将数组转化为字符串
attr=['aa','bb','cc']
attr.join('')==>aabbcc
attr.join()写什么参数表示用什么连接,不写表示默认用逗号连接:aa,bb,cc

(三)数组
一、JSON
var json=['name':'miao','age':'3']
json的遍历:for in
for(var arr in json){
alert(arr) ==>找到键
alert(json[arr])==>找到每一个键对应的值,arr不能加引号
}
注:json没有长度,只能通过for in的方法遍历,但数组可以采用for循环遍历,也可以采用for in的方式遍历
var arr=[a,b,c]
for(var i in arr){
alert(i) ==>返回的是数组下标
alert(arr[i]) ==>返回值
}
二、两种创建数组的区别
var arr1=[1,2,3]    arr1.length==>3   //返回数组的长度
var arr2=new Array(4)    arr2.length==>4  //返回放入数组的内容,如果放入‘4’,则返回1
三、数组的length属性
length属性可读可写
可用于清空数组:设置arr.length=0;arr=[];(此方法效率更高)
注:字符串的length属性不可写
四、数组的方法:
1.添加
(1)arr.push('abc') ==>往数组后添加,alert返回添加后的数组长度
(2)arr.unshift('abc') ==>往数组前添加,alert返回添加后的数组长度
2.删除
(1)arr.pop() ==>删除数组最后一位,alert返回删除的值
(2)arr.shift() ==>删除数组第一位,alert返回删除的值
3.splice添加,删除,替换
var arr=['TM','钟意','张森','杜鹏','Leo'];
(1)删除
arr.splice(0,1) ==>从第0位开始删除1位
(2)替换
arr.splice(0,1,'摩天') ==>从第0位开始,替换1位为‘摩天’
(3)添加
arr.splice(1,0,'媳妇儿') ==>在第1位添加‘媳妇儿’,可以添加多个,用逗号隔开
注:splice第一参为定位,二参为表示删除(>0)/添加(0),三参为添加或替换的内容
五、数组的sort排序(先将数组里的东西转换成字符串,再按照Unicode编码值排序):
var arr=[4,3,5,76,2,0,8]
1.顺排
arr.sort(function(a,b){
return a-b
})
alert(arr) ==>0,2,3,4,5,8,76(从大到小返回b-a)
2.乱排
arr.sort(function(a,b){
return Math.random()-0.5
})
 ==>因为生成的是随机数,其计算结果有时候是正,有时候是负,所以排出来的数组内容是乱序
注:排序只会改变位置,不会改变数组里的数据类型;如var  arr=['100px','200px']数组中会用到parseInt转换,最后是不会改变原值
六、Math函数
Math.random() ==>随机产生0-1的小数
Math.round(3.4) ==>3.4四舍五入
Math.floor(3.4) ==>3  3.4向下取整
Math.ceil(3.4) ==>4  3.4向上取整
Math.round(Math.random()*(y-x)+x) ==>得到x-y之间的任意整数
七、数组的连接concat
var arr1=[1,2,3]  var arr2=[4,5,6]  var arr3=[7,8,9]
alert(arr1.concat(arr2,arr3)) ==>[1,2,3,4,5,6,7,8,9]
八、数组元素的颠倒reverse
var arr=[1,2,3]
alert(arr.reverse()) ==>[3,2,1]

js回调函数,字符串,数组小析的更多相关文章

  1. js 回调函数小例子

    js 回调函数小例子 <script> //将函数作为另一个函数的参数 function test1(){ alert("我是test1"); } function t ...

  2. JavaScript回调函数及数组方法测试

    JavaScript回调函数及数组方法测试 具体代码如下: <!DOCTYPE html> <html lang="en"> <head> &l ...

  3. js回调函数的理解

    js回调函数(callback)理解 Mark! 讲之前说一句 function say(){ alert(,,,,,,,,) } var say=function (){ alert(,,,,,,, ...

  4. JS回调函数全解析教程

    转自:http://blog.csdn.net/lulei9876/article/details/8494337 自学jQuery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速g ...

  5. 学习js回调函数

    <!DOCTYPE HTML> <html> <head> <meta charset="GBK" /> <title> ...

  6. 如何理解JS回调函数

    1.回调函数英文解释: A callback is a function that is passed as an argument to another function and is execut ...

  7. js回调函数(callback)理解

    Mark! js学习 不喜欢js,但是喜欢jquery,不解释. 自学jquery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速google之,发现原来中文翻译成回调.也就是回调函 ...

  8. JS回调函数(callback)

    在使用Jquery的时候,用到Callback(),回调函数的概念.而且很多. 比如: $.ajax({ url:"test.json", type: "GET" ...

  9. js回调函数

    自学jQuery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速google之,发现原来中文翻译成回调.也就是回调函数了.不懂啊,于是在google回调函数,发现网上的中文解释实在是 ...

  10. JS回调函数的使用和作用

    <html> <head> <title>回调函数(callback)</title> <script language="javasc ...

随机推荐

  1. jquery扫尾

    blur和change事件的先后 change事件, 是要在失去焦点之后, 才和初始状态的值相比较, 如果在得到焦点等情况下, 你是无法和最后状态相比较等. 在失去焦点后, 首先触发等是change事 ...

  2. ios图文混排

    图文混排的形式 1. 富文本形式 2. core Text(文字排版) 3. TextKit 4. UIWebView 一.富文本 我们可以采用attributeString来进行图文混排.例如一个文 ...

  3. jvm指令调试

    监控GC的工具分为2种:命令行工具和图形工具: 常用的命令行工具有: 注:下面的命令都在JAVA_HOME/bin中,是java自带的命令.如果您发现无法使用,请直接进入Java安装目录调用或者先设置 ...

  4. IIs管理服务一直启动失败的原因之一

    首先eventlog里面的日志: 万维网发布服务(WWW 服务)没有为站点 1 注册 URL 前缀 https://*:8172/.该站点已被禁用.数据字段包含错误号. IISWMSVC_STARTU ...

  5. tornado 第二种路由方法(装饰器)

    #!/usr/bin/env python # _*_coding:utf-8 _*_ import tornado.ioloop import tornado.web application = t ...

  6. Servlet.init() for servlet springMvc

  7. 翻译:打造Edge渲染内核的浏览器

    最近开始了解UWP和Edge内核,在微软技术博客中找到一篇文章,主要是介绍Edge渲染内核使用技术.顺手翻译了一下.不对之处请斧正! Over the past several months, we ...

  8. monkey工具使用中遇到的问题之一:手机模拟器中的部分应用出现网络无法连接

    问题描述: 手机模拟器中的部分应用出现网络无法连接,但是比如:浏览器即可以正常访问网页 解决方法如下: 1.以管理员身份进入到cmd中,以WIN10为例 ,在电脑左下角点击鼠标右键就可以看到 注意: ...

  9. javascript 核心语言笔记- 3 - 类型、值和变量

    JavaScript 中的数据类型分为两类:原始类型(primitive type)和对象类型(object type).原始类型包括数字.字符串和布尔值 JavaScript 中有两个特殊的原始值: ...

  10. MongoDB replication set副本集(主从复制)(8)(转)

    转载地址:http://www.cnblogs.com/huangxincheng/p/4870557.html replicattion set 就是多台服务器维护相同的数据副本,提高服务器的可用性 ...