1 <script >
 2     //this知识 单词知识:property:属性 prototype:原型
 3     //*Q:什么是this?
 4     //*A:所有函数内部都有一个this,任何函数本质上都是通过某个对象来调用的,如果没有直接指定就是window
 5     //*   它的值是调用函数的当前对象
 6     //*Q:如何确定this的值
 7     //*A:test:window
 8     //    p.test():p对象
 9     //    new test():新创建的对象
10     //    p.call(obj):obj
11
12     function Person(color) {
13       console.log(this)
14       this.color = color;
15       this.getColor = function () {
16         console.log(this)
17         return this.color;
18       };
19       this.setColor = function (color) {
20         console.log(this)
21         this.color = color;
22       };
23     }
24
25     Person("red"); //this是谁? window
26
27     var p = new Person("yello"); //this是谁? p
28
29     p.getColor(); //this是谁? p
30
31     var obj = {};
32     p.setColor.call(obj, "black"); //this是谁? obj
33
34     var test = p.setColor;
35     test(); //this是谁? window
36
37     function fun1() {
38       function fun2() {
39         console.log(this);
40       }
41
42       fun2(); //this是谁? window
43     }
44     fun1();
45
46     //JS关于加分号问题‘
47     //js一条语句后面可以不加分号
48     //是否加分号是编码风格问题,没有应该或不应该,只有你喜不喜欢
49     //但在以下情况下不加分号会出现问题,要求需要在前面加一个分号
50     //小括号开头的前一条语句
51     //中括号开头的前一条语句
52     var a=3
53     ;(function () {//匿名函数自调用前面如果不加分号会出现错误,所以需要在前面加上一个括号
54
55     })()
56
57     var b=4
58     ;[1,2].forEach(function () {//这里在IDE上不会显示红线,但在运行中会出现编译错误,所以这里也要加一个分号,最好是加在一条语句的前面
59
60     })
61     /*
62     编译器的错误理解:var b=4[1,2].forEach(function () {//就会报undefined
63     })
64     */
65   </script>

转载于:https://www.cnblogs.com/junxiaobai/p/10336127.html

JS之this与语句分号问题v(**V**)v相关推荐

  1. JavaScript高级day01-PM【对象、函数、回调函数、IIFE、this、关于语句分号问题、webstorm代码模板、复习】

    笔记.视频.源码:JavaScript(基础.高级)笔记汇总表[尚硅谷JavaScript全套教程完整版] 目   录 P7 07.尚硅谷_JS高级_对象 23:30 1. 什么是对象? 2. 为什么 ...

  2. ie6、ie7、ie8下支持js 使用vml style.addRule('v\\:line,v\\:stroken',behavior:url(#default#VML);)

    ie6.ie7.ie8下支持js 使用vml 2010-11-17 10:52:40|  分类: 计算机和编程 |  标签:ie6.ie7.ie8下支持js  使用vml   |举报|字号 订阅 之前 ...

  3. js复习:输出语句,js要不要写标点符号,let ,const(常量),JavaScript 数组,JavaScript 对象

    js复习 1.输出语句 console.log() ,console.dir(),window.alert() 2.js要不要写标点符号? 3.let ,const(常量) 4.JavaScript ...

  4. 网站开发中JS中的常用语句

    1.document.write( " "); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document- >html- >(head,body ...

  5. JS中的分支语句和循环语句

    1.JS中的IF语句 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  6. 前端之JS条件、循环语句

    前端之JS代码块 条件语句 -- 做选择 if--else-- 语法: 条件运算符 switch 三元运算符 网页主题选择 循环语句 for 和 break while 和 continue 函数部分 ...

  7. JS中的if语句失效

    JS中的if语句失效,一直执行第一个条件后的语句 1.前几天做项目的时候,发现一个小bug,JS的if语句失效,一直执行的是第一个if判断中的语句. 原来的代码我是这样写的 if(999<dat ...

  8. 【68】JS(4)——表达式和语句②流程控制语句(1)条件分支语句

    本篇学习目标: 1.掌握各个条件分支语句的用法: 2.理解常见案例实现思路. 目录 一.if 语句 1. 介绍 2. 语法 3. 注意事项 (1)实现选择功能 (2)殊途同归 (3)不建议省略大括号 ...

  9. v$session v$session_wait

    (1)v$session v$session视图记录了当前连接到数据库的session信息 Column Description SADDR session address SID Session i ...

最新文章

  1. 哪些人适合学习java技术
  2. Oracle优化器:星型转换
  3. 信息安全之仿射密码加密和解密
  4. jar文件与云服务器断开,把jar包放到云服务器
  5. PTA —— 基础编程题目集 —— 编程题 —— 7-1 厘米换算英尺英寸 (15 分)
  6. Angular 内容投影 content projection 关于选择器问题的单步调试
  7. 大连交通大学计算机网络,计算机网络题库(大连交通大学)chapter5.doc
  8. foss测试_FOSS的业务真的是社区软件吗?
  9. scara机器人本体介绍
  10. Spring高级应用之bean的生命周期
  11. 数据结构 5-3-2 二叉树前序中序后序遍历非递归实现
  12. Linux软件安装到指定目录方法
  13. matlab如何创建callback函数_MATLAB作图实例:46:显示复杂的三维对象
  14. 小作坊的大道理——读《走出软件作坊》有感
  15. 安装linux后找不到系统文件夹,安装ubuntu时“没有定义根文件系统”错误
  16. 生产者消费者模型(自己上锁与阻塞队列两版本)
  17. vuex实例方法replaceState解决vuex页面刷新数据丢失问题
  18. LeetCode的使用方法
  19. 2016安卓手机安全隐私之对比与分析
  20. PHP删除多选checkbox,php一次性删除前台checkbox多选内容的简单示例

热门文章

  1. 关于Tensorflow安装opencv和pygame
  2. mssql性能优化[转](教你写出高质量的SQL语句)(二)
  3. Feign接口 多线程问题
  4. 雷军的金山云D轮获3亿美元!投后估值达19亿美金
  5. 详解华为与三星专利之争 律师称可能会打持久战
  6. maven建立webapp项目时显示Cannot change version of project facet Dynamic web module to 2.5
  7. 搜索引擎蜘蛛爬虫原理
  8. 红帽436——HA高可用集群之概念篇
  9. codeforces 234E Champions' League
  10. 如何在{{input}}中使用action