
正文
js中obj未定义,js console未定义
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
JS中关于call()方法的一个问题,如图中所示,求高手详解。
1、函数aaa的参数要求是一个函数,而json.b()是函数执行的结果,而且这个结果还不是一个函数而是undefined,所以会报错。区别在于,json.b是一个函数,因为对象json的属性b是一个函数。
2、第二句alert(a),显然在函数e的作用域里,变量a是不存在的,所以js会到window的作用域去查找属性a,而window的属性a是有的,它的值是A,所以这个时候alert(a)就是alert(window.a),alert的结果就是A。
3、不能改,因为此处的this是window对象不是e。这里e函数的作用作用其实是定义两个全局变量a,和b。换成e的话就是定义e的属性了。
4、call()语法:objcall(obj2[,param1,param2,...]);定义:用obj2对象来代替obj1,调用obj1的方法。
相关问答
Q1: 在js中用中括号访问对象的时候属性为什么要加上双引号?
1、所以代码会有问题。什么时候加引号什么时候不加引号,主要看你是不是要把这个东西当成一个字符串来用,如果要把它当成字符串,就加上。不论这个东西是不是在括号里面。
2、原因在于:eval本身的问题。 由于json是以”{}”的方式来开始以及结束的,在JS中,它会被当成一个语句块来处理,所以必须强制性的将它转换成一种表达式。
3、双引号是在告诉你,这是个文本节点,和旁边的“== $0”一样,是开发者工具给你的提示,并不是网页内容的一部分,因此,你在网页里看不到双引号。
4、将HTML标签的属性值用双引号引起来是w3c标准组织规定的做法,如果不加双引号,就无法区分是一些特殊字符了。HTML 属性 HTML 标签可以拥有属性。属性提供了有关 HTML 元素的更多的信息。
5、但是它们必须成对出现,不能前面用一个单引号,后面用一个双引号,这样会报错。
Q2: 怎样使用JavaScript中的数据类型
1、JavaScript的数据类型包括字符串、数字、布尔、数组、对象、Null、Undefined。在讲数据类型之前我们先讲一个操作符typeof。 typeof操作符 typeof操作符是用来检测变量的数据类型。
2、【推荐课程:JavaScript教程】方法一:typeof方法typeof 是一个操作符,右侧是一个一元表达式,并返回这个表达式的数据类型。
3、例如//这是单行注释/*这是多行注释这是多行注释*/③数据类型JavaScript的数据类型包括两大类:原始数据类型和引用数据类型。
4、javascript主要有以下三种数据类型转换方式:转换函数:parseInt()和parseFloat()分别将值转换成整数和浮点数。
5、由无序的键值对组成。其余几种都属于简单数据类型。注意:变量类型首字母大写,而变量值首字母是小写的。JavaScript不支持自定义类型,所以JavaScript中的所有值都属于这六种类型之一。
Q3: js声明变量不赋值,为什么是未定义而不是undefined
not defined:未发现。如果在函数中调用了一个没有定义的变量,就会提示not defined。undefined:未定义。是javascript的一种数据类型。定义一个变量但是未给它赋值,alert的时候就是undefined了。
没有赋值时,默认为undefined。这个题的考察点就是JavaScript中定义一个变量没有赋值时,默认为undefined,不定义变量变量b时没法读取变量的值。一个变量,会做变量的声明提升。
在变量提升(预解析)阶段,只声明未定义,默认值就是undefined。在JS的严格模式下(”usestrict”),没有明确的主体,this指的就是undefined。
关于js中obj未定义和js console未定义的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







