js代码

js基本包装类型及Math对象(八)

时间秒杀一切 提交于 2020-03-05 09:35:05
一、基本包装类型【 继承于Object类型 】 1、Number()、String()、Boolean()引用数据类型【包装类型】分别对应的基本数据类型为number、string、boolean。 2、当使用基本数据类型调用对应基本包装类型的方法时:后台会创建一个对应的基本包装类型对象来调用相关的方法。 相应的过程如下: a.创建相应基本包装类型的一个实例对象【 装箱 】 b.在实例对象上调用相应的方法 c.使用完成后,销毁这个实例对象【 拆箱 】 eg: var str = "abcefg"; str.substring(2); //此处创建了一个String实例来调用subString()方法 3、使用Object构造函数创建对象时,会依据其构造函数携带的参数类型来返回相应的基本包装类型 eg: var obj = new Object('nzc'); //携带参数为字符串则其构建的是一个String类型的实例 console.log(obj instanceof String); //true console.log(obj instanceof Object); //true 二、基本包装类型的相应的属性及方法 1、Boolean,Number,String 不建议直接使用其包装器类型 ,他们会增加代码的复杂性并降低执行速度。 2、String 基本包装类型的属性及方法:

angularJS之$apply()方法

那年仲夏 提交于 2020-03-05 08:54:36
这几天,根据buddy指定的任务,要分享一点 angular JS 的东西。对于一个在前端属于纯新手的我来说,Javascript都还是一知半解,要想直接上手angular JS,遇到的阻力还真是不少。不过我相信,只要下功夫,即使是反人类的设计也不是什么大的问题。 Okay,废话不多说。为了弄明白angular JS为何物,我先是从Scope开始。那么什么是Scope呢?借用 官方文档 的一段话: “ scope is an object that refers to the application model. It is an execution context for expressions . Scopes are arranged in hierarchical structure which mimic the DOM structure of the application. Scopes can watch expressions and propagate events. ”   看完后,类比到其他的编程语言上,感觉Scope就像是Data Model的作用域一样,为Expressions的执行提供上下文,暂且先这么理解吧。 Scope的特性   接下来,看看Scope有哪些特性呢? Scope提供$watch方法监视Model的变化。 Scope提供

前端常见跨域解决方案(全)

懵懂的女人 提交于 2020-03-05 07:55:44
前端常见跨域解决方案(全) 什么是跨域? 跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。 广义的跨域: 1.) 资源跳转: A链接、重定向、表单提交 2.) 资源嵌入:<link>、<script>、<img>、<frame>等dom标签,还有样式中background:url()、@font-face()等文件外链 3.) 脚本请求: js发起的ajax请求、dom和js对象的跨域操作等 其实我们通常所说的跨域是狭义的,是由浏览器同源策略限制的一类请求场景。 什么是同源策略? 同源策略/SOP(Same origin policy)是一种约定,由Netscape公司1995年引入浏览器,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。所谓同源是指”协议+域名+端口”三者相同,即便两个不同的域名指向同一个ip地址,也非同源。 同源策略限制以下几种行为: 1.) Cookie、LocalStorage 和 IndexDB 无法读取 2.) DOM 和 Js对象无法获得 3.) AJAX 请求不能发送 常见跨域场景 URL 说明 是否允许通信 http : //www.domain.com/a.js http : //www.domain.com/b.js 同一域名,不同文件或路径 允许 http : /

你不知道的JS系列 ( 20 ) - this绑定规则(默认绑定,隐式绑定)

为君一笑 提交于 2020-03-05 07:09:59
默认绑定 最常用的调用类型,独立函数调用,默认规则 function foo() {   console.log(this.a); } var a = 2 foo(); // 2 如果使用严格模式,全局对象将无法使用默认绑定,this 会绑定到 undefined function foo() {   'use strict';   console.log(this.a); } var a = 2 foo(); // TypeError: Cannot read property 'a' of undefined 但是这里有个非常重要的细节,只有 foo() 运行在非严格模式下,就能绑定到全局对象;严格模式与 foo() 的调用位置无关 function foo() {   console.log(this.a); } var a = 2; (function(){   'use strict';   foo(); //2 })() 通常代码中不应该混用严格模式和非严格模式,整个程序要么严格,要么非严格。 隐式绑定 另一条需要考虑的规则是调用位置是否有上下文对象 function foo() {   console.log(this.a); } var obj = {   a: 2,   foo: foo } obj.foo(); // 2 无论是直接在 obj

js基础知识3

拥有回忆 提交于 2020-03-05 06:27:09
系统对话框方法 警告框 window.alert('mcw'); 效果显示 确认框 var a = window . confirm ( '你确定要离开网站?' ); console . log ( a ); 如果点击确定, a 的值返回 true ,点击取消, a 的值返回 false 弹出框 var name = window.prompt('请输入你早晨吃了什么?','mcw'); console.log(name); prompt() 方法接收两个参数,第一个参数是显示的文本,第二个参数是默认的文本,如果点击了确定,则 name 的结果为 mjj 一次性定时器 setTimeout() setTimeout()方法表示一次性定时任务做某件事情,它接收两个参数,第一个参数为执行的函数,第二个参数为时间(毫秒计时:1000毫秒==1秒) window.setTimeout(function () { console.log('111'); },2000); console.log(2222); 周期性定时器。 setInterval() setInterval() 方法表示周期性循环的定时任务.它接收的参数跟 setTimeout() 方法一样. var num=0; window.setInterval(function () { num++; console.log(num

js ajax post 页面传值

强颜欢笑 提交于 2020-03-05 02:41:31
自己写的一个简单的js post ajax 页面传值 ajax一般处理程序相应代码 public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; string name = context.Request.Form["name"].ToString(); //获取Default.aspx post发送过来的数据 string pwd=context.Request.Form["pwd"].ToString(); //if (name == "admin" && pwd == "admin") { context.Response.Write("将进入支付页面"); context.Response.Cookies["username"].Value = name;//把获取到的数据保存到cookie里面,为的是方便另一个页面获取这个值 context.Response.Cookies["pwd"].Value = pwd; // } } Default.aspx 页面相应代码 //这个不用管,定死这么写,主要是为了清缓存 function createXMLHttp() { var XmlHttp; if (window.ActiveXObject) {

前端学习(33)~js学习(十):函数

让人想犯罪 __ 提交于 2020-03-04 22:54:40
关于函数的核心内容: 函数有哪几种定义和调用方式 this:函数内部的 this 指向、如何改变 this 的指向。 函数的严格模式 高阶函数:函数作为参数传递、函数作为返回值传递 闭包:闭包的作用 递归:递归的两个条件 深拷贝和浅拷贝的区别 函数的介绍 函数: 就是将一些功能或语句进行封装,在需要的时候,通过调用的形式,执行这些语句。 函数也是一个对象 使用 typeof 检查一个函数对象时,会返回function 函数的作用: 将大量重复的语句抽取出来,写在函数里,以后需要这些语句的时候,可以直接调用函数,避免重复劳动。 简化编程,让编程模块化。高内聚、低耦合。 来看个例子: console.log("你好"); sayHello(); // 调用函数 // 定义函数 function sayHello(){ console.log("欢迎"); console.log("welcome"); } 函数的定义/声明 方式一:利用函数关键字自定义函数(命名函数) 使用 函数声明 来创建一个函数(也就是 function 关键字) 。语法: function 函数名([形参1,形参2...形参N]){ // 备注:语法中的中括号,表示“可选” 语句... } 举例: function fun1(a, b){ return a+b; } 解释如下: function:是一个关键字

js-实现点击按钮直接打印

懵懂的女人 提交于 2020-03-04 21:52:39
很多网站都有此功能 ,点击按钮 直接打印;最近做项目有个这样的需求, 所以就研究了一下,具体代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <title>指定被打印的内容</title> <script language="javascript"> function print_fn(printname) { var newshtml = printname.innerHTML; var oldshtml = document.body.innerHTML; document.body.innerHTML =newshtml; window.print(); document.body.innerHTML=oldshtml; return false; } window.onload=function() { var button=document.getElementById("button"); var print=document.getElementById("print"); button.onclick=function() { print_fn(print); } } </script> </head> <body> <div id="print"> <h1>这是要被打印的内容</h1> <

js作用域和作用域链

回眸只為那壹抹淺笑 提交于 2020-03-04 19:25:26
作用域:在 js预编译 时、代码执行之前对全局或局部的变量进行收集,存放在一指定内存中scope,执行时对scope进行访问,scope 就是全局或局部的作用域。 如: 1 function test() { 2 var a = 123; 3 } 4 5 test(); 在test() 执行之前对test 进行预编译 生成test 的 scope(AO Activetion Object)。收集test 函数中的变量存放在scope中。 此时test 的scope 为: {   a:undefined } 在test 函数执行时 对 scope 中的 a 变量进行赋值,a = 123; 实际上在全局环境进行预编译时也会产生一个作用域,在test 被定义时会在test 函数上定义一个作用域数组([[Scopes]])。并将全局作用域放入test的作用域数组中。 如: 1 var a = 456; 2 3 function test() { 4 var b = 123; 5 console.log(b); 6 console.log(a); 7 } 8 9 test(); 在全局环境进行预编译时,会生成全局作用域Global Global {   a: undefined,   test: undefined } 此时test 函数的作用域数组中就已经包含了Global test.[

js作用域面试题大全

余生长醉 提交于 2020-03-04 17:06:17
什么是作用域: 浏览器给js的生存环境叫作用域。 什么是变量提升: Js 代码执行前,浏览器会给一个全局作用域 window Window 分两个模块一个是存储模块一个是执行模块 存储模块找到所有的 var 和 function 关键字给这些变量添加内存地址 执行模块,代码从上到下执行,遇到变量就会去存储模块查找,有和没有 有就看你赋值没有,赋值了就是后面的值没有赋值就是 undefined 。 没有结果就是 xxx is not defined 什么是原型链: 函数内部的变量被使用时,首先会在自己的私有作用域下查找是否有这个变量,有就直接使用,没有就向他的上一级查找,父级有就使用父级的,父级没有就以此继续向上查找直到查找带window有就使用没有就是is not defined。这种查找机制我们叫原型链。 案例分析 函数归属谁,跟她在哪调用没有关系,而是在哪定义有关。 函数外的变量叫全局变量,函数内的变量叫私有变量。 看变量归谁,看他在哪个作用域下声明。 360经典面试题 + function (){ console .log(a) var a = 5 ; function a (){} console .log(a) function b (){} b = 6 console .log(b) var c = d = b }() console .log(d) console