node.js json-server 使用教程

一. json-server介绍 json-server 一个在前端本地运行,可以存储数据的server ,模拟接口,操作模拟数据 二. json-server的使用 2.1 安装 npm install json-server -D 复制代码 安装完成之后,可以通过 json-server -h 命令检查是否安装成功 json-server [options] Options: --config, -c 指定 config 文件 [默认: "json-server.json"] --port, -p 设置端口号

javascript 中的 Object.defineProperty

javascript中的 object javascript中的object是由多个名/值对组成的无序的集合; object 中每个属性对应任意类型的值; 定义对象可以使用构造函数或字面量的形式. var obj = new Object; obj.name = "一介布衣"; obj.show = function(){}; //添加行为 除了以上添加属性的方式,还可以使用Object.defineProperty定义新属性或修改原有的属性 Object.defineProperty Object.defineProperty(obj, prop, descriptor) 参数说明:

vscode 天赋异禀 - 格式化jsx代码

jsx代码格式化错乱 当你在用vscode编写jsx代码时,也许你的编辑器设置了自动保存,或者自动格式化代码. 而vscode 对js文件中的 jsx 代码格式化是下面这个样子的: 如何修复这种情况 首先安装插件 Prettier vscode扩展插件中搜索 Prettier 安装 修改配置文件 vscode 文件-> 首选项-> 设置->用户->文本编辑器->文件 右侧添加项: "*.js": "javascriptreact" 或者在配置文件settings.json 中搜索 files.associations ,里面添加 "*

React 学习 JSX语法与原生HTML

JSX 可以看作JavaScript的拓展,看起来有点像XML。 使用React,可以进行JSX语法到JavaScript的转换。 为什么使用JSX 使用React,不一定非要使用JSX语法,可以使用原生的JS进行开发。但是React作者强烈建议我们使用JSX,因为JSX在定义类似HTML这种树形结构时,十分的简单明了。简明的代码结构更利于开发和维护。 XML有着开闭标签,在构建复杂的树形结构时,比函数调用和对象字面量更易读。看个直接的对比: //使用JSX React.render( <div> <div>

JSX 语法使用

利用 JSX 编写 DOM 结构,可以用原生的 HTML 标签,也可以直接像普通标签一样引用 React 组件。这两者约定通过大小写来区分,小写的字符串是 HTML 标签,大写开头的变量是 React 组件。 使用 HTML 标签: import React from 'react'; import { render } from 'react-dom'; var myDivElement = <div className="foo" />; render(myDivElement, document.getElementById('mountNode')); HTML 里

JSX 语法使用

利用 JSX 编写 DOM 结构,可以用原生的 HTML 标签,也可以直接像普通标签一样引用 React 组件。这两者约定通过大小写来区分,小写的字符串是 HTML 标签,大写开头的变量是 React 组件。 使用 HTML 标签: import React from 'react'; import { render } from 'react-dom'; var myDivElement = <div className="foo" />; render(myDivElement, document.getElementById('mountNode')); HTML 里

JSX 语法了解,我们为什么要学习它

传统的 MVC 是将模板放在其他地方,比如 script 标签或者模板文件,再在 JS 中通过某种手段引用模板。按照这种思路,想想多少次我们面对四处分散的模板片段不知所措?纠结模板引擎,纠结模板存放位置,纠结如何引用模板……下面是一段 React 官方的看法: We strongly believe that components are the right way to separate concerns rather than "templates" and "display logic." We think that markup and

JSX 语法了解,我们为什么要学习它

传统的 MVC 是将模板放在其他地方,比如 script 标签或者模板文件,再在 JS 中通过某种手段引用模板。按照这种思路,想想多少次我们面对四处分散的模板片段不知所措?纠结模板引擎,纠结模板存放位置,纠结如何引用模板……下面是一段 React 官方的看法: We strongly believe that components are the right way to separate concerns rather than "templates" and "display logic." We think that markup and

JSX语法及学习

文章目录 对比 为什么使用 JSX JSX 是 Javascript 代码里直接写XML的语法 JSX (Javascript XML syntax transform) 是使用XML语法编写Javascript的一套解析工具; X代表XML;也可以理解为扩展(eXtension),因为实现JSX功能本身就是使用Javascript; React建议使用JSX(但非必要) 实质上这只是一个语法糖,每一个XML标签都会被JSX转换工具转换成纯Javascript代码 React 官方推荐使用JSX, 当然你想直接使用纯Javascript代码写也是可以的,只是使用JSX

javascript 关于Date 时间类型 处理方法

上一篇博客中和大家分享了关于 字符串转时间类型 这一篇顺便整理下 javascript 中 Date 类型的一些方法 var time = new Date(); var year=time.getYear(); //获取当前年份(2位) var year1=time.getFullYear(); //获取完整的年份(4位,2015-????) var moonth=time.getMonth(); //获取当前月份(0-11,0代表1月) time.getDate(); //获取当前日(

javascript 关于Date 时间类型 处理方法

上一篇博客中和大家分享了关于 字符串转时间类型 这一篇顺便整理下 javascript 中 Date 类型的一些方法 var time = new Date(); var year=time.getYear(); //获取当前年份(2位) var year1=time.getFullYear(); //获取完整的年份(4位,2015-????) var moonth=time.getMonth(); //获取当前月份(0-11,0代表1月) time.getDate(); //获取当前日(

javascript 实现html5 页面下拉刷新

使用html5 开发一个手机端页面如何能像app一样实现下拉刷新,或者上推刷新.我们试图用html5+css+javascript 来实现一下,没有用到任何第三方插件或者开源js包.先看下效果:这是微信内置浏览器打开后的效果,再看下从顶部按住下拉刷新的效果首先有一个目标div这个 div 用来监听 touchstart ,touchmove ,touchend 三个事件.这3个 事件分别表示 手指触摸屏幕开始, 手指在屏幕移动 , 手指触摸结束那么这个 目标div 一旦被监听后,你的手指放在此div内,就会触发上面的事件. 2. 当触发某个事件时,我们希望看到上面一个下拉的拉伸效果,并且提示

javascript xmlhttprequest 纯天然无第三方插件 ajax 实现

手写的纯javascript 实现xmlhttprequest .屛弃了所有第三方javascript 包,这样做的目的主要是节省空间,现在很多第三方框架动辄几十K,上百k 等.如果我们只用到其中一个很小的 ajax 功能,完全没有必要这样做.而且当前的应用环境是手机端的展示,所以对于流量的考虑至关重要.看下代码实现:functionajax(option,callback){ //option参数必须是对象,里面包括(type请求方式,url请求路径,param请求参数) if(typeofoption==='object'){ //option没有定义请求url,直接返回错

javascript 中 实例,构造函数和原型对象的区别

前天写了一篇关于匿名函数的原型链和集成的文章(点击链接查看),里面蜻蜓点水式的把实例,原型对象和构造函数带过去了.这种抽象的东西不是很好记忆,我们通过一个示例来说明可能更好了解.functionPerson(name){ this.name=name; }在javascript中,你可以把上面的代码看做一个函数,一个类,一个方法,都没有问题.但是你又能看到其他静态语言的一些身影, 比如: this.name=name; 这是标准的初始化内部属性/变量的语句,第一反应这应该是构造函数.其实,在javascript中,任何一个函数你都可以把它看做是构造函数,它没有明显的特征.那什么时候它就明显了呢

javascript 下 匿名函数到底有没有原型链,是否能继承?

javascript中函数成为一等公民后,导致很多其他语言函数所没有的功能,也正是这些特性让javascript更加灵活.函数可以是一个变量,可以是一个参数,可以是一个返回值,可以是一个类,可以是一个方法.....够灵活吧.其中高阶函数是javascript中闭包的实现基础,而闭包又是javascript高度灵活的体现.今天和大家分享的是一种特殊的函数,匿名函数.如其名一样,就是没有名字的函数,这种匿名函数用到的地方很多,比如jquery 的大部分实现都用了匿名函数.为什么要这样用? 因为javascript语言本身的缺陷使得它是一门没有私有作用域的语言,它不像一些高级语言一样,有命名空间或者

javascript 下 匿名函数到底有没有原型链,是否能继承?

javascript中函数成为一等公民后,导致很多其他语言函数所没有的功能,也正是这些特性让javascript更加灵活.函数可以是一个变量,可以是一个参数,可以是一个返回值,可以是一个类,可以是一个方法.....够灵活吧.其中高阶函数是javascript中闭包的实现基础,而闭包又是javascript高度灵活的体现.今天和大家分享的是一种特殊的函数,匿名函数.如其名一样,就是没有名字的函数,这种匿名函数用到的地方很多,比如jquery 的大部分实现都用了匿名函数.为什么要这样用? 因为javascript语言本身的缺陷使得它是一门没有私有作用域的语言,它不像一些高级语言一样,有命名空间或者

express 解析post方式下的json参数

node.js 下最出名的web框架 express ,之前低版本(4.0以下)貌似需要依赖bodyParser 包来解析请求体,Express 3.x和4.x版本的区别 查看此博文了解.后来的版本把bodyParser 继承进去,需要在express 配置项里 user(express.bodyParser({ keepExtensions: true, uploadDir: '/tmp' })) 如下代码:varexpress=require('express'), app=express(); app.configure(function () {    

Sublime Text2 javascript格式化插件JsFormat

用Sublime Text2写javascript非常爽作为nodejs开发必备神器,前面有单独介绍此编辑器的文章今天要说的是一款javascript格式化插件打开你的Sublime Text2按下快捷键 Ctrl+Alt+p 打开命令面板输入install 这时下拉框第一项就会显示安装包控制器(这个需要初始化安装,不明白的搜索本站关于sublime Text2 的介绍) 然后回车进入安装包控制器界面打开安装包控制器后,输入 jsformat 回车安装即可.安装后如何使用?在你写javascript代码时,按下 Ctrl+Alt+f 快捷键后,js代码自动格式化对齐,赶快试一试吧!如果你mac

javascript 字符串和时间类型相互转化

常见的时间类型字符串:vardate1="2014-03-0912:00:00";javascript 对 类似上面这种时间转化不感冒,它更青睐的是这种字符串格式的时间 "2014/03/09 12:00:00" ,我们姑且称作date2所以有种非常简单的方法就是将 date1 的格式转换成 date2 的格式然后再转化时间类型.如下vartime1=newDate(Date.parse(date1.replace(/-/g,"/")));上面一行代码实现了date1 转 时间类型.求时间差方法:var days=time1-time

走火入魔javascript — 分享几个好多人执意往里跳的”坑”

javascript 是一门容易上手也是一门如意犯错的语言,为什么这么说,它零活的类型转化有时让你摸不到头脑.类型有没有定义都无所谓,一旦你的变量前少了var ,那可能会造成一个严重的bug ,污染了全局变量,甚至修改了全局变量的值,导致其他引用该变量的程序出错.函数形参和实参可以不匹配,不匹配到什么程度呢? 类型可以不匹配,甚至参数数量也可以不匹配……..等等javascript里的一些坑,如果你发现了一定要绕过去,如果你发现不了,那可能浪费你很多的时间去调试一个bug1.关于 NaN 类型,这是个非数值类型,那它的值是什么呢? 谁都不知道,的确,它自己都不知道.所以看下面的坑if(NaN=

jquery 判断某个元素在DOM中是否存在

javascript 代码下判断 DOM 下是否存在某个元素if(document.getElementByIdx_x(‘but’)){ alert(‘元素存在’); }else{ alert(‘元素不存在’); }但是在JQuery 下如判断某个元素是否存在.jquery 内置没有直接判断dom中某个元素是否存在的方法.$(“#but”) 获取到的是jquery 对象,是一个object,无法判断此元素是否存在.但是jquery 对象有个length 属性,表示当前jquery 对象中获取到几个 domElement 元素.所以我们的jquery代码可以这样写:if($(“#but”).le

走火入魔javascript – javascript中的垃圾回收机制

javascript的垃圾回收机制是运行环境自动收集机制.也就是说执行环境负责管理代码在执行过程中使用的内存.垃圾回收原理:找出内存中不再继续使用的变量,将其所占用的内存释放,开发人员不再关心内存的使用情况,内存的分配已经无用内存的释放完全实现了自动化管理.垃圾回收的方法有2种:(1)标记清除(2)引用计数标记清除:是目前javascript最常用的一种垃圾回收机制,当变量进入执行环境,将被标记为 “进入环境”当变量离开执行环境时,将被标记为 “离开环境”.垃圾收集器在运行时会给存储在内存中的所有变量都加上一个标记,然后检查哪些变量还在环境中使用,将去掉这些变量的标记,检查哪些变量被环境中的变

my97显示双日历

大名鼎鼎的my97 日期选择控件,做开发的攻城狮应该或多或少都了解.今天正好有个需求是现实双月份,而且截至日期要大于开始日期等需求,第一时间想到了my97控件.首先把最后的效果图放上来一睹为快!我的页面首先有2个文本框,一个开始日期,一个结束日期<inputtype=“text”id=“startTime”placeholder=“起始日期”/>- <inputtype=“text”id=“endTime”placeholder=“结束日期”/>首先去 my97 官网下载控件,引用的时候最需要引用一个主文件即可,其他样式,图片等都不需考虑,脚本内部做了引用.<sc

比较俩个对象或者json格式数据是否相同

javascript 中的对象比较并不是值的比较.所以类似object 和json类型格式比较时要考虑是否包含相同的属性并具有相同的属性值.贴一个用于对象比较的函数.只需传入两个对象即可返回 true 或者 falsefunctioncompareObject(o1,o2){ if(typeofo1!=typeofo2)returnfalse; if(typeofo1=='object'){ for(varoino1){ if(typeofo2[o]=='undefined')returnfalse; if(!compareObject(o1[o],o2[o])
  • 1

回到顶部