
JavaScript
文章平均质量分 72
可爱的小雨
这个作者很懒,什么都没留下…
展开
-
JavaScript入门时不该犯的几个低级编写脚本错误
1.确定括号都成对出现;2.确定围起代码块的大括号都成对出现------小心地缩排代码有助于维持成对的大括号;3.努力避免打错标识符名称------变量与函数名称如果不一致,很容易造成大问题;4.在使用引号与撇号时,维持使用方式的一致,如果需要,在HTML属性中小心的使用者两个符号;5.使用转义符,为字符串中具有特殊意义的字符编码,例如引号(\")或撇号(\');6.千万别在想原创 2017-11-07 22:52:31 · 196 阅读 · 0 评论 -
js中apply()和call()的区别和用法
Js apply方法详解 我在一开始看到javascript的函数apply和call时,非常的模糊,看也看不懂,最近在网上看到一些文章对apply方法和call的一些示例,总算是看的有点眉目了,在这里我做如下笔记,希望和大家分享.. 如有什么不对的或者说法不明确的地方希望读者多多提一些意见,以便共同提高.. 主要我是要解决一下几个问题: 1.apply和cal转载 2017-12-20 14:48:42 · 231 阅读 · 0 评论 -
8、ES6跨模块常量
跨模块常量 // const声明的常量只在当前代码块有效,如果想设置跨模块的常量,怎么办? //module.js(假设这是放常量的模块) export const variantName="variantValue"; //从module.js模块输出variantName常量原创 2017-12-04 10:30:01 · 532 阅读 · 0 评论 -
6.ES6全局对象属性
全局对象的属性: 全局对象是最顶层的对象,在浏览器环境指的是window对象,在Node.js指的是global对象。在javascript语言中,所有全局变量都是全局对象的属性。(Node的情况比较特殊,这一条只对repl环境适用,模块环境必须显示声明成global的属性。) ES6规定,var命令和function命令声明的全局变量,属于全局对象的属性;let命原创 2017-11-19 18:20:04 · 649 阅读 · 0 评论 -
7.ES6 变量的解构赋值 (Destructuring)
解构 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 数组解构 var b=2; var c=3; --> var [a,b,c]=[1,2原创 2017-11-19 18:50:18 · 234 阅读 · 0 评论 -
12、ES6 解构赋值的7个用途
解构赋值的用途: 1、交换变量的值 2、从函数返回多个值 3、函数参数的定义 4、提取json数据 5、函数参数的默认值 6、遍历Map解构 7、输入模块的指定方法------------------------------------------------------1、交换变量的值-原创 2017-12-05 11:33:11 · 360 阅读 · 0 评论 -
10、ES6 字符串的解构赋值
字符串的解构赋值 1、字符串也可以解构赋值:字符串被转换成了一个类似数组的对象。 2、属性解构赋值:类似数组的对象都有一个length属性,因此还可以对这个属性解构赋值。 ----------------------------------------------------------------字符串的解构赋值--------------原创 2017-12-05 09:49:48 · 600 阅读 · 0 评论 -
19、ES6 函数的扩展---作用域(与文章案例有出入)
作用域一旦设置了参数的默认值,函数进行声明初始化时,参数会形成一个单独的作用域(context)。等到初始化结束,这个作用域就会消失。这种语法行为,在不设置参数默认值时,是不会出现的。 demo var x=1; function f(x,y=x){ console.log(y)原创 2017-12-18 09:54:57 · 184 阅读 · 0 评论 -
20、ES6 属性的遍历 一共有 5 种方法可以遍历对象的属性
属性的遍历ES6 一共有 5 种方法可以遍历对象的属性。(1)for...infor...in循环遍历对象自身的和继承的可枚举属性(不含 Symbol 属性)。(2)Object.keys(obj)Object.keys返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含 Symbol 属性)的键名。(3)Object.getOwnPropertyName原创 2017-12-24 18:42:00 · 35331 阅读 · 0 评论 -
13、ES6 Iterator(遍历器)的概念
1. Iterator(遍历器)的概念JavaScript原有的表示“集合”的数据结构,主要是数组(Array)和对象(Object),ES6又添加了Map和Set。这样就有了四种数据集合,用户还可以组合使用它们,定义自己的数据结构,比如数组的成员是Map,Map的成员是对象。这样就需要一种统一的接口机制,来处理所有不同的数据结构。遍历器(Iterator)就是这样一种机制。它是一种接口,原创 2017-12-06 16:05:22 · 430 阅读 · 0 评论 -
14、ES6 for...of循环
类似数组的对象类似数组的对象包括好几类。下面是for…of循环用于字符串、DOM NodeList对象、arguments对象的例子。//字符串 demo let str="hello"; for(let s of str){ console.log(s); //h原创 2017-12-07 18:05:36 · 466 阅读 · 0 评论 -
5.ES6 const命令
------------------------------------const用来声明常量------- const命令 const Pi=3.1415926535; console.log(Pi); //3.1415926535; Pi=3;原创 2017-11-16 20:54:37 · 166 阅读 · 0 评论 -
4.ES6块级作用域
document console.log("ES5:"); function fun(){ var num=100; if(true){ var num=200; } conso原创 2017-11-16 15:34:05 · 163 阅读 · 0 评论 -
如何在input标签选择图片上传并设置图片大小以及点击图片可以选择删除
1、引入jquery库,选择正确放jquery文件的路径2、放一个文件选择的的标签3、写一个用于存放图片的容器4、引入一个5.image-file.js内容如下:(function($) { $.imageFileVisible = function(options) { // 默认选项var defaults = { /原创 2017-11-12 13:49:59 · 2609 阅读 · 0 评论 -
innerHTML和outerHTML的区别,jQuery删除节点的方法
一、区别:1)innerHTML: 从对象的起始位置到终止位置的全部内容,不包括Html标签。2)outerHTML: 除了包含innerHTML的全部内容外, 还包含对象标签本身。二、例子: test1 test2 1)innerHTML的值是“test1 test2 ”2)outerHTML的值是test1 test2-----------------原创 2017-11-12 17:11:38 · 1666 阅读 · 0 评论 -
1.ES6简介
ECMAScript和JavaScript的关系 ECMAScript(简称ES6)是JavaScript语言的下一代标准,于2015.6正式发布; ECMAScript和JavaScript的关系,简单来说,ECMAScript是JavaScript语言的国际标准,JavaScript是ECMAScript的实现。 ECMAScript6的兼容(推原创 2017-11-15 23:04:16 · 755 阅读 · 0 评论 -
15、ES6 数组的解构赋值
数组的解构赋值 基本用法ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。以前,为变量赋值,只能直接指定值。 //ES5 var a=1; var b=2; var c=3;ES6允许写成下面这样。var [a,b,c]=[1,2,3]; console.log(a);原创 2017-12-08 14:03:58 · 154 阅读 · 0 评论 -
9、ES6 对象的解构赋值
1、解构不仅可以用于数组,还可以用于对象 对象的属性没有次序,变量必须与属性同名,才能取到正确的值。2、指定默认值 默认值生效的条件是,对象的属性值严格等于undefined。3、现有对象的方法 对象的解构赋值,可以很方便的将现有对象的方法,赋值到某个变量。----------原创 2017-12-04 23:36:48 · 355 阅读 · 0 评论 -
16、ES6 数值和布尔值的解构赋值
数值和布尔值的解构赋值解构赋值时,如果等号右边是数值和布尔值,则会先转为对象。let {toString:s}=123;s === Number.prototype.toString;let {toString:s}=true;s===Boolean.prototype.toString;上面代码中,数值和布尔值的包装对象都有 toString属性转载 2017-12-08 20:13:54 · 1233 阅读 · 0 评论 -
2.ES6,let基本用法
let命令基本用法 ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。不存在变量提升 let不像var那样,会发生“变量提升”现象。暂时性死区 只要块级作用域内存在let命令,它所声明的变量就“绑定”(binding)这个区域,不再受外部的影响。不允许重复声原创 2017-11-15 23:37:18 · 258 阅读 · 0 评论 -
3.ES6为什么需要块级作用域
为什么需要块级作用域? ES5只有全局作用域和函数作用域,没有块级作用域,这带来很多不合理的场景。 第一种场景,内层变量可能会覆盖外层变量。 第二种场景,用来计数的循环变量泄露为全局变量。ES6的块级作用域 let实际上为javascript新增了块级作用域。---------------------原创 2017-11-16 10:57:52 · 602 阅读 · 1 评论 -
11、ES6 函数参数的解构赋值
函数参数的解构赋值 1、函数的参数也可以使用解构 2、函数参数的解构也可以使用默认值---------------------------------------------------------------函数参数的解构赋值-------------------- 函数参数的解构赋值原创 2017-12-05 10:45:06 · 793 阅读 · 0 评论 -
17、ES6 圆括号的问题
圆括号问题 解构赋值虽然很方便,但是解析起来并不容易。对于编译器来说,一个式子到底是模式,还是表达式,没有办法从一开始就知道,必须解析到(或解析不到)等号才能知道。由此带来的问题是,如果模式中出现圆括号怎么处理。ES6的规则是,只要有可能导致解构的歧义,就不得使用圆括号。但是,这条规则实际上不那么容易辨别,处理起来相当麻烦。因此,建议只要有可能,就不要在模式中放置圆括号。不能使用圆原创 2017-12-09 00:08:31 · 2049 阅读 · 0 评论 -
18、ES6 字符串的扩展
1. 字符的Unicode表示法JavaScript允许采用 \uxxxx 形式表示一个字符,其中“xxxx”表示字符的码点。 var v="\u0061"; console.log(v); //a但是,这种表示法只限于 \u0000 ——\uFFFF 之间的字符。超出这个范围的字符,必须用两个双字节的形式表达。 var v="\uD8转载 2017-12-09 10:53:10 · 180 阅读 · 0 评论