
javascript相关
Kevin&Swift
每天进步一点点.记录生活的一部分
展开
-
js相关语法基础(1)
js语法与java类似,每个语句会以 ; 结尾,语句块用{}但是,js并不强制要求在每个语句末尾加上;浏览器中执行js的引擎会在每个语句的末尾自动补上;var x = 1; js的注释一行内可用// 多行可用/* ... */ 来进行注释。js中的判断相等。请注意 js把null.undefined 0 NaN和空字符串 ''视为false,其他值一概视为true.第一种是 =...原创 2018-12-14 21:38:43 · 130 阅读 · 0 评论 -
jquery的使用
jquey可以帮我们干这些事情:1.消除浏览器的差异,不需要自己写冗长的代码来针对不同的浏览器绑定事件。2.简洁的dom操作. $("#test”)方法3.轻松实现动画,修改css等各种操作。jquery的版本 2.x移除了对古老的IE6 7 8的支持。因此2.x更加的精简。按ID查找,按tag查找。按class查找.// 查找<div id="abc">:...原创 2019-01-08 20:38:12 · 207 阅读 · 0 评论 -
koa学习(2)
前端模板引擎的渲染 可以用ejs模板const render = require('koa-ejs');//配置模板引擎render(app,{ root:path.join(__dirname,'views'), layout:'layout', viewExt:'html', cache:false, debug:false})配置模板引...原创 2019-01-13 15:14:05 · 466 阅读 · 0 评论 -
koa学习(1)
koa是Express的下一代基于Node.js的web框架,目前有1.x和2.0两个版本。koa 1.0 用es6的generator来实现异步doreadFile()等有值时就返回。var koa = require('koa');var app = koa();app.use('/test', function *() { yield doReadFile1();...原创 2019-01-11 21:33:21 · 437 阅读 · 0 评论 -
generator的使用
generator是es6标准引入的新的数据类型,一个generator看上去像一个函数,但是可以多次的返回。generor有function *定义,并且除了return以外,还可以yield返回多次。以斐波那数列举例0 1 1 2 3 5 8 13 21 34按照如下的写法function fib(max){ var t,a = 0,b = 1,arr = [0,...原创 2019-01-11 19:21:01 · 980 阅读 · 0 评论 -
js promise对象
在JavaScript的世界中,所有代码都是单线程执行的。由于这个“缺陷”,导致JavaScript的所有网络操作,浏览器事件,都必须是异步执行。异步执行可以用回调函数实现:function callback() { console.log('Done');}console.log('before setTimeout()');setTimeout(callback, 10...原创 2019-01-06 15:14:17 · 1317 阅读 · 0 评论 -
js浏览器对象
js的window对象.window对象不但能充当全局作用域,而且表示浏览器的窗口。window有innerWidth和innerHeight属性。获得内部高度和宽度。除去菜单栏,工具栏,和边框后,单独显示网页的净宽高。console.log('window inner size' + window.innerWidth);会随着窗口大小的拉伸变化而变化。navigator表...原创 2019-01-06 14:48:57 · 1214 阅读 · 0 评论 -
js对象
js中我们可以定义如下对象'use strict'var Student = { name: 'Robot', height: 1.2, run: function () { console.log(this.name + ' is running...'); }};var xiaoming = { name: '小明'}; 将xiaoming指...原创 2019-01-05 20:42:34 · 2970 阅读 · 0 评论 -
node中模块
为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码比较少,在node中,一个js文件就是一个模块module,当一个模块编写完毕,就可以被其他地方引用。我们在编写程序的时候,也经常引用其他模块,包括Node内置的模块和来自第三方的模块。使用模块还可以避免函数名和变量名冲突,相同名字的函数和变量可以分别存在不同的模块中,因此,我们自己在编写模...原创 2019-01-10 22:31:46 · 728 阅读 · 0 评论 -
js相关语法基础(6)闭包
高阶函数除了可以接受函数作为参数以外,还可以把函数作为结果值返回。来实现一个对array的求和。传统方法。function sum(arr){ return arr.reduce(function(x,y){ return x + y; })}console.log(sum([1,2,3,4]));不返回求和的结果,而返回求和的函数。func...原创 2018-12-18 20:42:14 · 196 阅读 · 0 评论 -
js相关语法基础(5)高阶函数
函数可以指向某个变量,一个函数可以接受另外一个函数作为参数变量,这种函数就叫做高阶函数。function add(x, y, f) { return f(x) + f(y);}map方法定义在js的array中,调用array的map方法,传入我们自己的函数,就可以得到一个新的array作为结果。function pow(x){ return x * ...原创 2018-12-18 20:21:33 · 155 阅读 · 0 评论 -
js基本类型
ES5共有5种基本类型,分别为number,string,null,undefined,boolean,ES6新增了symbol.console.log(typeof undefined); 输出为undefinedconsole.log(typeof null); 输出为objectconsole.log(typeof [1]); 输出为objectconsole.log(typ...原创 2018-12-24 09:16:41 · 2934 阅读 · 0 评论 -
js相关语法基础(4)函数使用。
js中定义函数的方法.function add(a,b){return a + b;}如果没有return语句,函数执行好后也会返回执行结果,只是结果为undefined.js中有一个免费赠送的关键字arguments,他只在函数内部起作用,永远指向传入的当前参数,arguments类似array但又不是array.function add(a,b){for(var i...原创 2018-12-17 20:05:54 · 228 阅读 · 0 评论 -
JS中全局变量作为函数实参传入的问题
当js中的全局变量作为形参传入时,默认都是值拷贝传入进去的,无论是对象传进去或者值传进去。例如,值传进去有如下代码。var a = 1;function temp(b){b = a;b += 1;console.log(b);}console.log(a);(temp(a));console.log(a);这样在函数中改变局部变量的值,不会改变全局变量的属性,但是若将对象...原创 2018-12-11 17:15:28 · 3514 阅读 · 0 评论 -
js相关语法基础(3)字典(对象) 及遍历迭代。
判断一个对象中是否含有属性 即是否含有某个key 可以用 in 但是toString 定义在object对象中,而对象最终都会在原型链上指向object,所以 toString存在于每个对象中 这时候可以使用hasOwnProperty()方法。var xiaoming = {name: '小明'};console.log(xiaoming.hasOwnProperty('...原创 2018-12-14 22:33:51 · 1621 阅读 · 0 评论 -
js相关语法基础(3)数组
数组的定义:两种方式。var a = [1,2,3,4,5];console.log(a);a = new Array(1,2,3,'hello');console.log(a);请注意:直接给数组赋予一个新的长度会导致arr的大小发生变化。没有的会以undefined赋值、var arr = [1, 2, 3];arr[5] = 'x';arr; // arr变为[...原创 2018-12-14 22:12:17 · 761 阅读 · 0 评论 -
js相关语法基础(2)字符串
js设计之初,并不强制使用var申明变量,这个设计后来带来了严重的错误,如果一个变量没有通过var声明便使用,那么该变量就自动被声明为全局变量。在同一个页面的不同js文件中,如果都不用var声明,恰好都使用了变量i,将造成变量i 相互调用。使用var声明的变量则不是全局变量,他的范围被限制在函数体内,同名变量在函数体内不相互影响。,ECMA在后续规范中推出了strict模式,在s...原创 2018-12-14 21:59:37 · 178 阅读 · 0 评论 -
js中的错误处理
使用try catch finallu这种机制 与一般语言相同var r1,r2,s = null;try{r1 = s.length;r2 = 100;}catch(e){ console.log("出错了");}finally{ console.log("出错");}js有一个标准的error对象表示错误,还有从error派生出来的typeError ...原创 2019-01-09 22:19:14 · 272 阅读 · 0 评论