var方法

typescript入门基础

孤街浪徒 提交于 2019-12-30 03:05:30
欢迎加入前端交流群 交流知识&&获取视频资料: 749539640 1.typescript介绍 微软开发的一门编程语言,javascript的一个超集,遵循最新的ES6脚本语言规范(2015年发布),它扩展了Javascript的语法,任何已经写好的javascript程序都可以不加改动的在typescript环境下运行,它只是向javascript添加了一些新的遵循ES6的语法,以及基于类的面相对象编程的特性。angular2框架2016年9月底发布,是由typescript语言来编写的;typescript是由谷歌和微软在背后支持的,有可能成为前端脚本语言发展的主流方向。 2.typescript优势 支持ES6语法 强大的IDE支持(允许为变量指定类型、语法提示【很强】、重构【很方便修改文件或方法的名字,自动连带修改】) angular2开发语言 3.typescript开发环境的搭建 目前的主流浏览器还不是完全支持ES6语法规范,用ES6写的程序并不能直接放到浏览器上,需要把typescript代码转换为javascript代码才能在浏览器里运行; 安装typescript compiler,这个是typescript的编译器 3.1在线complier : http://www.typescriptlang.org/play/index.html 3

C# Lambda表达式

只愿长相守 提交于 2019-12-29 23:40:42
今天高手讨论了一个问题: FuncList.FindAll(pNodes => pNodes.ParentID == "01") 等价于 if(pNodes.ParentID == "01") return pNodes; 实际就是一个委托函数的缩写。 总结一下: “Lambda 表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式目录树类型。 所有 Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为“goes to”。该 Lambda 运算符的左边是输入参数(如果有),右边包含表达式或语句块。Lambda 表达式 x => x * x 读作“x goes to x times x”。 http://baike.baidu.com/view/3048187.htm Windbey中为了增强对集合的访问能力, MS设计了List<T>这么一个泛型集合, 其中有不少的增强功能,比如Foreach,ConvertAll,FindAll等等,并且为了方便使用MS在System名空间下引入了一些特制的Delegate.主要包括以下几个: 20 public delegate void Action<T>(T obj); //Used by ForEach 21 public delegate int Comparison<T>(T x, T y); /

ES6 基础学习

拈花ヽ惹草 提交于 2019-12-29 01:15:36
ECMAScript 6 标准入门 一、let和const let命令 let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效;是块级作用域,且 let 不允许在相同作用域内,重复声明同一个变量。 { let a = 12; } console.log(a); //Uncaught ReferenceError: a is not defined { let a = 12; let a = 22; } console.log(a); //Uncaught SyntaxError: Identifier 'a' has already been declared 另一个例子: var a = []; for (var i = 0; i < 10; i++) { a[i] = function () { console.log(i); }; } a[6](); 上面代码中,变量 i 是 var 命令声明的,在全局范围内都有效,所以全局只有一个变量 i 。每一次循环,变量 i 的值都会发生改变,而循环内被赋给数组 a 的函数内部的 console.log(i) ,里面的 i 指向的就是全局的 i 。也就是说,所有数组 a 的成员里面的 i ,指向的都是同一个 i ,导致运行时输出的是最后一轮的 i 的值,也就是10。 如果使用 let

ES6 快速入门

坚强是说给别人听的谎言 提交于 2019-12-29 01:15:03
ES6 初识 ES6 是 ECMAScript 6.0 的简写,即 JavaScript 语言的下一代标准,已经在 2015年6月正式发布了,它的目标是让JS能够方便的开发企业级大型应用程序,因此,ES6的一些规范正在逐渐向Java、C# 等后端语言标准靠近。在 ES6 规范中,比较重大的变化有以下几个方面: 新增 let、const 命令 来声明变量,和var 相比,let 声明的变量不存在变量提升问题,但没有改变JS弱类型的特点,依然可以接受任意类型变量的声明;const 声明的变量不允许在后续逻辑中改变,提高了JS语法的严谨性。 新增解构赋值、rest 语法、箭头函数等,这些都是为了让代码看起来更简洁,而包装的语法糖。 新增模块化机制,这是 JavaScript 走向规范比较重要的一步,让前端更方便的实现工程化。 新增类和继承的概念,配合模块化,JavaScript 也可以实现高复用、高扩展的系统架构。 新增模板字符串功能,高效简洁,结束拼接字符串的时代。 新增 Promise 机制,解决异步回调多层嵌套的问题。 ES6 介绍 let和const let ES6新增了let命令,用于声明变量。其用法类似var,但是声明的变量只在let命令所在的代码块内有效。 { let x = 10; var y = 20; } x // ReferenceError: x is not

常用JS方法整理

*爱你&永不变心* 提交于 2019-12-29 01:04:54
本篇目录: 1.截取指定字节数的字符串 2.判断是否微信 3.获取时间格式的几个举例 4.获取字符串字节长度 5.对象克隆、深拷贝 6.组织结构代码证验证 7.身份证号验证 8.js正则为url添加http标识 9.URL有效性校验方法 10.自定义jsonp方法 11.cookie操作 12.生成随机字符串 (可指定长度) 13.浏览器判断 14.Rem移动端适配 15.获取url后参数 16.动态加载JS 17.生成随机颜色值 上述方法都是日常工作中使用所得,所以会不定时更新,大家也可以留下你觉得好的方法:) 1.截取指定字节数的字符串 /** * 截取指定字节的字符串 * @param str 要截取的字符穿 * @param len 要截取的长度,根据字节计算 * @param suffix 截取前len个后,其余的字符的替换字符,一般用“…” * @returns {*} */ function cutString(str, len, suffix) { if (!str) return ""; if (len <= 0) return ""; if (!suffix) suffix = ""; var templen = 0; for (var i = 0; i < str.length; i++) { if (str.charCodeAt(i) > 255) {

常用JS方法整理

本小妞迷上赌 提交于 2019-12-29 01:03:58
本篇目录: 1.截取指定字节数的字符串 2.判断是否微信 3.获取时间格式的几个举例 4.获取字符串字节长度 5.对象克隆、深拷贝 6.组织结构代码证验证 7.身份证号验证 8.js正则为url添加http标识 9.URL有效性校验方法 10.自定义jsonp方法 11.cookie操作 12.生成随机字符串 (可指定长度) 13.浏览器判断 14.Rem移动端适配 15.获取url后参数 16.动态加载JS 17.生成随机颜色值 上述方法都是日常工作中使用所得,所以会不定时更新,大家也可以留下你觉得好的方法:) 1.截取指定字节数的字符串 /** * 截取指定字节的字符串 * @param str 要截取的字符穿 * @param len 要截取的长度,根据字节计算 * @param suffix 截取前len个后,其余的字符的替换字符,一般用“…” * @returns {*} */ function cutString(str, len, suffix) { if (!str) return ""; if (len <= 0) return ""; if (!suffix) suffix = ""; var templen = 0; for (var i = 0; i < str.length; i++) { if (str.charCodeAt(i) > 255) {

jQuery源码学习笔记(一)

∥☆過路亽.° 提交于 2019-12-28 23:02:47
今天是学习jQuery的第一天,先明确一下学习目标:通过用自己的思路仿写jQuery库,更好地理解它的底层原理和编程思想。 假设世界上还没有jQuery这样一个库,我们要从哪里开始呢?如果我们现在正在做一件事情,比如说喝水。那么,我们为什么要喝水呢?原因很简单,肯定是在此之前我们感觉到口渴了。也就是说我们产生了一个喝水的需求,而这个需求促使我们去做喝水这件事情。有没有发现,不单单喝水,其实我们大部分的行为都是由需求来驱动的。首先得要有一个需求,在需求的推动下我们才会采取相应的行动试图去满足这个需求。写一个jQuery库也是一样,在行动之前,我们得要先搞清楚写这个库的需求在哪里?也就是说:为什么要写这个库?不然,我们根本不知道从何入手。那么,为什么要写一个jQuery库呢? 我们知道,jQuery本质上就是用javascript代码写成的各种方法的集合。但是javascript本身不是已经提供了各种各样的方法和功能了吗?为什么还要再另外写一个库出来呢?原因其实很好猜,那肯定是我们要写的这个库比javascript提供的原生方法更好用了,对吧?恩,到这里我们似乎得到了一个基本需求:写一个比原生javascript提供的方法集更好用的库。这个需求的关键在于“更好用”三个字。怎么才是“更好用”呢? 我们知道一个原则:结构、表现、行为相分离。javascript是负责其中的“行为”的

filter方法

六月ゝ 毕业季﹏ 提交于 2019-12-28 19:34:52
filter 用于检查指定数组中符合条件的元素 array.filter(function(currentValue,index,arr), thisValue) currentValue :当前值 index 当前索引 arr 当前元素属于的数组对象 对象作为执行回调时候使用,传递给函数,用作this值;如果省略了的话this的值为undefined var aaa = [ 1,2,3,4 ] ; var bbb = aaa.filter (( val ) = > { return val <= 2 } ) console.log ( bbb ) // [ 1,2 ] 来源: CSDN 作者: Smile沛沛 链接: https://blog.csdn.net/qq_34273059/article/details/103747448

ES6 新增set方法

假如想象 提交于 2019-12-28 16:21:55
var arr = [1,2,3,3,2,1,4,5]; // 实例化时传入数组 var s = new Set([...arr]); // set数组长度 console.log(s.size) // 判断是否存在 console.log(s.has(1)) // 删除一项 s.delete(2); console.log(s.has(2)) // 使用扩展运算符生成数组 // console.log([...s]); // 使用Array.from生成数组 var a = Array.from(s); console.log(a); // 去除数组重复成员 函数 function dedupe(array) { return [...new Set(array)]; // return Array.from(new Set(array)); } var aaa = dedupe([1,2,2,3,4,5,5,5,5,6,6,6,6,7,7,7]); var bbb = [...new Set([1,2,2,3,4,5,5,5,5,6,6,6,6,7,7,7])]; console.log(aaa,bbb) // 实现 两个数组 求全集 求交集 求差集 var a = [1,2,3,4]; var b = [3,4,5,6]; // 全集 [1,2,3,4,5,6] 交集 [3

//获取deviceList1.html页面跳转的url

大城市里の小女人 提交于 2019-12-28 11:12:07
//获取deviceList1.html页面跳转的url var url = location.search; console.log(url) //获取url中"?"符后的字串 (’?modFlag=business&role=1’) var theRequest = new Object(); if ( url.indexOf( “?” ) != -1 ) { var str = url.substr( 1 ); //substr()方法返回从参数值开始到结束的字符串; var strs = str.split( “&” ); for ( var i = 0; i < strs.length; i++ ) { theRequest[ strs[ i ].split( “=” )[ 0 ] ] = ( strs[ i ].split( “=” )[ 1 ] ); } console.log( theRequest ); //此时的theRequest就是我们需要的参数; localStorage.setItem(“deviceId”, theRequest.deviceId); } 来源: CSDN 作者: weixin_43176587 链接: https://blog.csdn.net/weixin_43176587/article/details/103741362