js 或 且 非】的更多相关文章

回调函数,阻塞和非阻塞对于初学者来说总是一些不好理解的东西,最好的办法就是通过实际写代码去体会.笔者今天就通过一个例子来简单解释一下JS的非阻塞,分享分享我的理解. 首先回调函数:这是一个异步过程,简单说就是,在一个函数的执行过程中,我去做我该做的事,在这期间我不管你,你可以去做你的事.但是当我做完我的事,之后,我就得通知你,接下来就看你的了. 比如: function doSomething (callback) { //在这里你可以做你的事. callback("PengL");…
vue2中废弃了$dispatch和$broadcast广播和分发事件的方法.父子组件中可以用props和$emit().如何实现非父子组件间的通信,可以通过实例一个vue实例Bus作为媒介,要相互通信的兄弟组件之中,都引入Bus,之后通过分别调用Bus事件触发和监听来实现组件之间的通信和参数传递. 首先需要在任意地方添加一个bus.js 在bus.js里面 写入下面信息 import Vue from 'vue' 2 export default new Vue; 在需要通信的组件都引入Bus…
JS中的逻辑运算符在处理布尔值的判断时,和其他语言没有什么不同,不过在处理对象时,就需要好好梳理记忆下了. 逻辑非(!) 如果一个操作数是一个对象,返回false; 如果一个操作数是一个空字符串,返回false; 如果一个操作数是一个非空字符串,返回false; 如果一个操作数是一个数值0,返回true; 如果一个操作数是任意的非零字符,返回false; 如果一个操作数是null,返回true; 如果一个操作数是NaN,返回true; 如果一个操作数是undefined,返回true; ps:…
多数原因为界面ajax中动态添加的元素还没被添加上,就执行了js函数(js函数要调用动态元素),解决办法:ajax方法中添加 async:false,同步,作用为,在ajax执行完毕后才执行之后的js. 详细介绍请查看全文:https://cnblogs.com/qianzf/ 原文博客的链接地址:https://cnblogs.com/qzf/…
首先需要在任意地方添加一个bus.js: 在bus.js里面 写入下面信息 import Vue from 'vue' export default new Vue; 在需要通信的组件都引入Bus.js 如果你的bus.js是自定义一个bus的文件那from后面就改成你的所放的位置 import Bus from './bus.js' 接下来就是要组件通信了 添加一个 触发 #emit的事件按钮 <template> <div id="emit"> <bu…
后台: http://wed.27.cn/marry/marryadmin/web/login.php 不难猜解到后台管理的相关页面名称(不存在的页面服务器返回404,而存在的页面会直接跳转到上面的登录页面). 请求不存在的页面: 用firefox禁用JS后请求admin.php页面,依然跳转到登录页面,说明不存在JS绕过的问题.鉴于 WooYun: 我是如何登录住哪网后台的(突破IP限制!) 的灵感,用http editor请求看看,奇迹出现了:   如此是何道理?浏览器请求和工具请求没什么区…
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> /* * && || 非布尔值的情况 * * - 对于非布尔值进行与或运算时,会先将其转换为布尔值,然后再运算,并且返回原值 * * - 与运算: * - 如果第一个值…
取非运算符: 开关思想:0为false,1为true: 把一个变量中保存一个布尔值 然后在业务执行时,修改这个变量的值: 为取反 然后通过变量的值执行分支业务 例子: var a = "123"; console.log(!a);//false var b = 0; console.log(!b);//true console.log(!!b);//false -->!true=false 一些特殊的要熟记,如: "",undefined,null,NaN /…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <sc…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <sc…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <sc…
function JTrim(s){    return s.replace(/(^\s*)|(\s*$)/g, "");} //你先调用一下这个方法,然后在判断 function CheckNull() { var userName = document.getElementById('textName').value; if (JTrim(UserName) != "") { //要执行的方法 } }…
给定 x=6 以及 y=3,下表解释了逻辑运算符: 运算符 描述 例子 && and (x < 10 && y > 1) 为 true || or (x==5 || y==5) 为 false ! not !(x==y) 为 true…
如果当前窗口不是最上层窗口(比如是在Iframe中),那么就把自己变为最上层窗口.  <script language="javascript" type="text/javascript">        if (window.top != null && window.top.location != window.location) {            window.top.location = window.location;…
const eventList = {} const $on = (eventName,callback)=>{ if(!eventList[eventName]){ eventList[eventName] = []; } eventList[eventName].push(callback) } const $emit = (eventName,params)=>{ if(eventList[eventName]){ let arr = eventList[eventName]; arr.…
接地气,兼容性好,支持IE8) function diff(arr1,arr2){ var a = []; var b = []; for(var i=0;i<arr2.length;i++){ a[arr2[i]]=true; } for(var i=0;i<arr1.length;i++){ if(!a[arr1[i]]){ b.push(arr1[i]); } } console.log(b) }…
JS中的执行环境,顾名思义就是变量或函数所执行时的环境.在我的理解中,执行环境和作用域相差不大. 每个函数都有自己的执行环境,当执行流进入一个函数时,函数的环境就会被推入一个环境栈中.而在函数执行之后, 栈将其环境弹出,把控制权返回给当前的执行环境.简单点来说,就像C语言中的栈,当一个函数被运行时,它总是先运行 最内部的函数(也就是局部函数),再一层一层的向外部执行,就像一个栈一样,后进先出. 当代码在一个环境中执行时,会创建变量对象的一个作用域链.作用域链好像一把梯子,最外层的(全局环境)永远…
JS是单线程的语言,也就是说同一时间只会执行一行程序,所以如果一段程序执行过久就会造成阻塞(blocking)的现象,必须等到它结束后才能执行下一段程序. 举个例子来说,如果我们今天要买便当,但是老板说要十分钟才会好,那难道我们这十分钟内都不能做任何事情吗? 当然不是,JS本身有非同步执行的功能,也是就说我们会先跟这个函式说,你先到旁边继续跑,好了在「回来呼叫」我,我先继续跑其他程序. 有没有看到熟悉的关键字「回来呼叫」,没错非同步执行基本上都是利用callback达成. 举个例子来说,我们今天…
前言  上周5在公司作了关于JS异步编程模型的技术分享,可能是内容太干的缘故吧,最后从大家的表情看出"这条粉肠到底在说啥?"的结果:(下面是PPT的讲义,具体的PPT和示例代码在https://github.com/fsjohnhuang/ppt/tree/master/apm_of_js上,有兴趣就上去看看吧! 重申主题  <异步编程模型>这个名称确实不太直观,其实今天我想和大家分享的就是上面的代码是如何演进成下面的代码而已. a(function(){ b(functi…
什么是Node.js 1.Node.js就是运行在服务端的JavaScrip. 2.Node.js是一个基于Chrome JavaScrip运行时简历的一个平台. 3.Node.js是一个非阻塞I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快. 看下官网的介绍: Node.js is a platform built on Chrome’s JavaScript runtime for easily building fast, sc…
从我大一接触第一门编程语言C开始,到现在工作三年陆续接触到了C.汇编.C++.C#.Java.JavaScript.PHP,还有一些HTML.CSS神马的,从来没有一门语言让我像对node.js一样的着迷.接触nodejs在我之前博客提到过在搞web socket在选择服务器的时候很多人推荐nodejs版的,无奈当时对nodejs没有任何概念,所以没看懂人家写的代码,但是感觉很熟悉,网上基本是以在服务器端运行的javascript来解释什么是nodejs,这就让我更疑惑了,javascript怎…
Node.js基础学习 Node.js回调函数 Node.js异步编程的直接体现就是回调,异步编程依托回调来实现,但不是异步.回调函数在完成任务后就会被调用,Node有很多的回调函数,其所有的API都支持回调. Eg:可以一边读取文件,一边执行其它的命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回,这样在执行代码时就没有阻塞或等待文件I/O操作.大大的提高了node.js的性能,处理大量的并发请求.(简单的理解就是同时做两件或者多件事情,减少其等待的时间) 阻塞代码: 1:创建文本和…
之前一直听说node.js在处理网站大规模并发上十分有用,所以有一定规模的公司都在使用node.我在工作中只用过jquery,属于那种边做功能边学习的那一种.甚至连原生的js都不太会写,只是知道语法差不多吧.于是诚惶诚恐的购买了一本<node.js权威指南>,先看再说吧,边看边学习语法和一些api,遇到不懂的就直接百度.从这两天学习的进程来说,对于我这个将近两年工作经验的.net程序员来说还不算困难. 本文章将会总结我这两天的学习心得,并在一些地方,比如语法等地方对比C#,使大家更容易去理解,…
Node.js 是一个采用C++语言编写的后端的 Javascript 的运行环境, 它使用了 google 的 V8虚拟机来解释和执行代码.Node.js 的有许多有用的内置的模块,比如 http, fs, events, querystring,url.当使用http 模块创建一个web server时,在IE 和 Firefox 浏览器下也是可以工作的.   所以 Node.js 事实上既是一个运行时环境,同时又是一个库.   Node.js采用  1.非阻塞:2.单线程:3.事件驱动  …
node.js介绍 javascript原本只是用来处理前端,Node使得javascript编写服务端程序成为可能.于是前端开发者也可以借此轻松进入后端开发领域.Node是基于Google的V8引擎封装的,并提供了一些编写服务器程序的常用接口,例如文件流的处理.Node的目的是提供一种简单的途径来编写高性能的网络程序. Node.js特性* 单线程* 非阻塞IO* Google V8* 事件驱动 node.js安装 对于在windows下的开发环境,node.js已经提供了windows安装包…
前言  上周5在公司作了关于JS异步编程模型的技术分享,可能是内容太干的缘故吧,最后从大家的表情看出"这条粉肠到底在说啥?"的结果:(下面是PPT的讲义,具体的PPT和示例代码在https://github.com/fsjohnhuang/ppt/tree/master/apm_of_js上,有兴趣就上去看看吧! 重申主题  <异步编程模型>这个名称确实不太直观,其实今天我想和大家分享的就是上面的代码是如何演进成下面的代码而已. a(function(){ b(functi…
背景 系统需要兼容蛋疼的IE6... 解决方案 *{ 兼容IE6-8 }* <!--[if lt IE 9]> <script src="@{'/public/mng/javascripts/jquery-1.9.1.js'}"></script> <![endif]--> *{ 兼容IE9或以上 }* <!--[if gte IE 9]> <script src="@{'/public/plugins/eas…
第二章 语法结构         2.1 js区分大小写,html不区分大小写         2.5 注意分号,如果没有分号,解释器会试图解析js,并在不能解析的地方加分号 第三章 值和变量         js数据类型分两类:原始类型(数字,字符串,布尔值)和对象类型.         两个特殊的原始值:undefined,null         3.1 数字             js不区分整型和浮点类型,所有数字都是浮点数值             infinity 最大值  -in…
JS代码的简单重构与优化(适合新手) 原文  http://www.cnblogs.com/similar/p/5016424.html Demo . 1 //bad if (age > 20) { return true; } else { return false; } //good return age > 20; 这种一看就明白吧,没什么说的. Demo . 2 //bad for (var i = 0; i < arr.length; i++) { //do something…
js是区分大小写的,关键字.变量.函数名和所有的标识符都必须采取统一一致的大小写形式. js定义了unicode转义序列,以\u开头,其后跟随四个十六进制数,可以在字符串直接量.正则表达式直接量和标识符中(关键字除外)使用 js的单行注释是//格式,后面的语句是注释内容 多行注释是 /* 注释内容 */ js标识符必须是以字母._.$开始,js也允许非英语语言和数学符号来做为标识符,但是不建议这样做,最好还是ASCII码比较好 尽量每行都加上分号以免出错 js的保留字如下,请不要使用如下字符作为…