深入学习javascript

函数返回值

图1

我们之前的都是没有返回值,实际上我们可以用return将函数运行的结果返回出来,return后面别忘了分号!

图2

如果不写return或者return后面跟着空的,返回的就是undefined类型


函数传参

图3

我们对参数求和,如果我们就是2个数就和,那传2个参数就可以,如果参数不固定怎么办

图4

我们传入的参数可以用arguments接收到,比如我们传入3个,显示长度为3,所以你就明白了。初始res=0,遍历过程中一直加就可以了

图5

对于css,我们传如上图2个参数是获取样式,3个参数是赋值

图6

我们可以定义一个这样的函数,当接收了3个参数和2个参数判断下,就可以实现给对象属性赋值和获取对象属性


如何取非行间样式

图7

我们之前也知道样式在行间,我们可以用标签.style.属性名获取,但如果属性再样式表定义的呢,我们可以使用currentStyle,来替代style即可,然而马上就打脸,这个这能兼容IE,其他不行

图8

我们可以按照如上图,使用getComputedStyle(a,b).属性获得,其中a参数我们传入对象,b参数据说传入什么内容都可以,这里起名getComputedStyle,是因为可能很多影响样式,计算机最终计算出来的结果,但是getComputedStyle只能支持ff,chrome浏览器

图9

我们可以在用对currentStyle判断,如果OK,则使用,否则其他浏览器,则为undefined,我们就用getComputedStyle

图10

因为浏览器设置可能很多需要兼容的地方,我们可以把获得属性封装成函数,以便我们多次使用


数组基础

我们之前var a=[1,2,3];声明一个数组

我们也可以var a=new Array(1,2,3);

两种定义效果一样

数组的长度为length属性,不过这个长度可以赋值,比如a=[1,2,3,4]

我们设置a.length=2,那么数组a就变成了[1,2],如果设置a.length=6,就会给数组添加2个undefined对象,

我们这么使用可以快速清空数组

为了防止数组混乱,建议数组最好只存一个类型的

数组添加删除

图11

push,给数组末尾加元素,shift给数组左侧添加元素

pop尾部删除,unshift给头部添加元素

图12

我们想从中间插入删除插入就要用到splice

删除splice(起始索引,删除长度)

var a=[1,2,3,4,5,6];a.splice(2,3)结果a就剩下[1,2,6]

插入splice(起始索引,删除长度一般写0,元素1,元素2...)   除了起点长度,后面的都被插入

var a=[1,2,3,4,5,6];a.splice(2,0,9,9,9)结果a就剩下[1,2,9,9,9,3,4,5,6]

当然我们也可以又删除又插入,实现替换


数组排序,转换

图13

concat数组拼接

图14

可以用如上代码体验,其中哪个在前面就是谁的concat,结果为1,2,3,4,5,6这个过程中a没有改变

join(字符串)用字符串拼接数组的内容,形成一长串字符串

图15

排序sort

图16
图17

可以看到对于字符串是按首字母优先排序,和python一样,相同则比较下一位,长的比端的靠后,

图18

如果我们的数组元素是数字呢

图19

可以看到结果并不是我们想的,所以数组的sort()方法只能按字符串排序,

我们想让他能按数字排序,怎么办呢,我们可以给sort传入一个函数,函数有2个参数,当前者大返回1,后者大返回-1,相等返回0

图20

我们这么运行后,实现了数字的排序,其实sort()函数并不关系是﹢1还是+2还是什么只要是正数,同理-1也只要是负数即可

图21

我们就sort(function(n1,n2){return n1-n2;});即可对数字排序(当然我们可以逆序,返回值变成n2-n1)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,826评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,968评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,234评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,562评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,611评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,482评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,271评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,166评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,608评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,814评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,926评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,644评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,249评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,866评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,991评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,063评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,871评论 2 354

推荐阅读更多精彩内容