创建对象的方法

1.对象字面量法

var obj={}
var obj={
'first-name':'Tom',
'last-name':'bush',age:24,
Family:{
Brother:’tony’,
Father:’jack’}
}

对于合法的js标示符且不是表达式,并不强制要求用引号扩住属性名,对于不合法的标识符,则引号是必须的,如'first-name',对象可以嵌套

2.数组字面量法

var box=['a','b',3,4,5];
alert(box[1]); //b
//遍历
for(x in box){
document.write(x+":"+box[x]+"<br/>");
}
//0:a
//1:b
//2:3
//3:4
//4:5
//不可以box['x']或box.x

二.this 指向

在全局里this指向window,在某个对象里 this指向该对象,但在闭包里this却指向window

看以下代码

var user="the Window";
var box={user:'the box',getThis:function(){return this.user;},getThis2:function(){return function (){return this.user;}}
};alert(this.user);//the Window
alert(box.getThis());//the box
alert(box.getThis2()());//the Window
alert(box.getThis2().call(box));//the box  对象冒充

闭包不属于这个对象的属性或方法所以指向全局

还有一种解决方法

var box={user:'the box',getThis:function(){var that=this;//指向boxreturn function(){return that.user;}}
}
alert(box.getThis()());//the box

转载于:https://www.cnblogs.com/HKUI/p/3333461.html

js对象与this指向相关推荐

  1. #JS:this的指向及函数调用对this的影响

    call.apply.bind和this真是ES5众多坑中的一个,希望本篇文章能让你记住它们! this的指向 此前在摸清JS中this的指向问题 ,这篇文章中我就尝试总结过this的指向,也顺带提及 ...

  2. JS 对象机制深剖——new 运算符

    其实关于 new 的讨论,早有众多前辈做了先行.然而作为 JS 对象机制系列的一个重要成员,这一篇不可少,而且按照自己的惯例,我将首先引用语言规范的内容.另外,本篇引用到的规范内容比较多,不过我会做详 ...

  3. JS对象与Dom对象与jQuery对象之间的区别

    前言 通过问题看本质: 举例: js的写法:document.getElementById('save').disabled=true; 在jquery中我是这样写的 $("#save&qu ...

  4. JS对象与jQuery对象

    JS对象大致可以分为三种,如下图: JS常用内置对象(JS自身所持有的对象,不需要创建,直接可用): String:API跟java的字符串API大致相同 两种创建对象的方式:String s1 = ...

  5. [js] 说说你对js对象生命周期的理解

    [js] 说说你对js对象生命周期的理解 一切皆对象 咱们经常听到JS中"一切皆对象"?有没有问想过这是什么意思?其它语言也有"一切皆对象"之说,如Python ...

  6. JS对象拷贝:深拷贝和浅拷贝

    摘要:对象拷贝,简而言之就是将对象再复制一份,但是,复制的方法不同将会得到不同的结果. 本文分享自华为云社区<js对象深浅拷贝,来,试试看!>,作者: 北极光之夜.. 一.速识概念: 对象 ...

  7. replace为undefined_手写 XML 转化为 JS对象 方法

    function xml(str, is = true){ //解析XML/* 定义返回的对象 */let result = { //解析成功返回的对象(标签名,属性集合对象[属性名:属性值...], ...

  8. 从零开始学前端 - 16. JS对象Object介绍及常用方法

    作者: 她不美却常驻我心 博客地址: https://blog.csdn.net/qq_39506551 微信公众号:老王的前端分享 每篇文章纯属个人经验观点,如有错误疏漏欢迎指正.转载请附带作者信息 ...

  9. 自学js第十天:JS对象和this和执行上下文

    复习数组基础方法 作用域 函数 小测试: <!DOCTYPE html> <html lang="en"><head><meta char ...

  10. js 对象解构_JS对象:解构

    js 对象解构 JS对象:TL; DR (JS Objects: TL;DR) JavaScript has been plagued since the beginning with misunde ...

最新文章

  1. 如何计算空间一条直线外一点到这条直线的垂足点坐标
  2. 自己编写的MSN历史记录合并工具
  3. jQuery循环使用相同类的元素
  4. ML之NBLoR:利用NB(朴素贝叶斯)、LoR(逻辑斯蒂回归)算法(+CountVectorizer)对Rotten Tomatoes影评数据集进行文本情感分析—五分类预测
  5. “面试不败计划”:面试题基础二
  6. TCP超时设置的客户端重发5次
  7. 最为完整的gdb调试
  8. .net mysql字符串截取_MySQL 字符串拆分操作(含分隔符的字符串截取)
  9. Const限定符与C++11Constexpr的区别
  10. 看清贬值的真实情况再惊恐
  11. autosize px转dp_干货集中营
  12. 软考常考知识点整理-项目风险管理计划
  13. 老师偷偷塞给我一份资料,封面写着《操作系统》,下面一行小字
  14. Windows远程控制时,输入账号密码无法登录,提示“用户名或密码错误”问题(已解决)
  15. 《Ogre一步一步学开发》 一、Ogre源码编译与安装,从源代码开始构建Ogre图文教程(Ogre 1.12.1 Source + VS2019 + Windows10)
  16. Mysql5.1大表分区效率测试
  17. 云服务器是widows7系统,云服务器win7系统
  18. 黑鲨3能用鸿蒙系统吗,黑鲨游戏手机3支持语音操控:没有三头六臂照样吃鸡
  19. 怎么恢复永久删除的文件
  20. 获取元素在屏幕的相对位置

热门文章

  1. 正在更新office,应用程序无法正常启动
  2. NSCT(Nonsubsampled Contourlet变换)
  3. ArcGIS 打开捕捉工具
  4. android实现Materia Design风格APP(二):部分Materia Design风格的控件介绍一
  5. 计算某日是该年的第几天
  6. 详细解读用C语言编写的 “扫雷”程序
  7. Flutter之实战InheritedWidget详解
  8. 卧槽,又来一个 Java 大神器!!
  9. 视频画面帧的展示控件SurfaceView及TextureView对比
  10. android package.xml,文件没问题的情况下not read packageName from xxx\AndroidManifest.xml?