㈠ javascript什么是返回值
返回值 就是通过程序计算之后的到结果,也是函数实现返回最终的结果
函数(方法)一般分为有返回值和无返回值,无返回值实现功能最终不返回结果,有返回值的,最终返回该函数的计算结果。
(1)js返回哪些数据类型扩展阅读
js里面的返回值有三种意思:
第一种情况,也是用得最多的情况,返回值是用于获取函数执行完毕后,获取到我们需要得到的结果;
第二种情况,就是返回空值,用来中止程序的;
第三种情况,用于防止事件冒泡,这种情况多在IE下生效。
返回值就是子函数返回给调用它的上一级函数的一个数值,就是return语句后的值。
比如一个子函数int func()在主函数调用,a=func();
在func()中有一个return b;
则func()返回的值就是这时候变量b的值,并且赋值给主函数中的变量a。
c语言中,有许多情况下需要重复某些语句的计算,就可以把这些语句单独提出来形成子程序,遇到重复的地方调用就可以了;但是有些情况下需要得到子程序运行的一个结果时,就可以通过将子程序设计成带返回值的函数,比如标准的sin函数,它的返回值就是一个double型数据。
在c语言的编程中大部分的函数调用信息是靠返回值来获得的,而这就需要用很多的定义,比如返回-1表示什么意思,-2表示什么意思,-3表示什么意思等等。
而c++中加入了异常的处理,这也算是一种获取信息的方式,但毕竟不是那么友好,大多数情况下,如果返回错误,我们对返回值不是很感兴趣,而是对返回的信息描述感兴趣。只要能简单描述错误的信息就可以了。
如此我们可以用这样一种方式来处理。返回值如果是类类型的如果正确就返回正确值,如果错误就返回null,而在参数中加一个ref string的参数,用来返回错误的描述信息。
如果返回值正确,这个参数就为null。这样一来我们就不用再定义一大堆的返回值信息(而且这此返回值信息还不通用,只能在一个函数中使用)了。而且我们可能只定义一些字符串常量,用来描述各种错误信息即可。
参考资料来源 :网络-返回值
㈡ 怎样使用JavaScript中的数据类型
Javascript最常用的有五种数据类型,介绍一些这五种数据类型的具体应用:
1. Undefined
未定义。只有一个值
2.Null
只有一个值,null
3. Boolean
在javascript中,只要逻辑表达式不返回undefined不返回null,就都是真的。
参考代码:
if(3)true
if(null)false
if(undefined)false
4.Number
5.String
javascript中不存在char类型。
字符串定义可以用单引号,也可以用双引号。
<html>
<head>
<scripttype="text/javascript">
//vars="hello";
//alert(typeofs);//s是字符串类型
vars=newString("hello");//s是对象类型
alert(typeofs);
</script>
</head>
<body>
</body>
</html>
typeof 是一个一元运算符,用来获得变量的数据类型
其返回值有五个 undefined,boolean,number,string以及object.
其中前面四个都好理解。而最后一个object是让程序员无从判断的,只笼统的返回了object
在javascript中,如果函数没有声明返回值,那么会默认返回undefined。
如果声明了返回值,那么实际返回什么就是什么。
undefined从null派生,所以比较时返回true
alert(undefined==null);//true
强制类型转换
在javascript中,有三种强制类型转换:
Boolean(value)
Number(value)
String(value)
参考代码:
<html>
<head>
<scripttype="text/javascript">
varnum=Number(3);
alert(num);
vars="hello";
alert(Boolean(s));
vars1=String("hello");
alert(typeofs1);
varobj=newString("hello");//这不是强制类型转换!
alert(typeofobj);
</script>
</head>
<body>
</body>
</html>
在javascript中,所有的对象都继承自Object对象。
用new 的方式生成。
js中有些方法是可以枚举出来的,有些是不行的。
用js内置方法可以判断,是否可以枚举出来。
参考代码
<html>
<head>
<scripttype="text/javascript">
varobject=newObject();
for(varvinobject){
console.log(v);
}
alert(object.propertyIsEnumerable("prototype"));//返回了false,表示没有可以枚举的属性,也意味着子对象相应的属性也是不可以枚举的
</script>
</head>
<body>
</body>
</html>
枚举自定义类型的属性
参考看代码:
<html>
<head>
<scripttype="text/javascript">
varmember=function(name,age){
this.name=name;
this.age=age;
}
varm=newmember("liudh",50);
for(varvinm){
console.log(v);
//name
//age
}
alert(m.propertyIsEnumerable("prototype"));//false
//for(varvinwindow){
//console.log(v);
//}
</script>
</head>
<body>
</body>
</html>
㈢ 判断JS中变量是 string 类型的几种方法
利用 typeof 进行字符串类型判断的语法为 typeof operand,其返回值为字符串类型。因此,我们可以直接使用 typeof a === 'string' 进行判断。
值得注意的是,typeof 还有其他特殊情况,但主要用途在于字符串类型判断。
另一种方法是使用 instanceof。其语法规则为 object instanceof constructor,返回值为布尔类型。其工作原理是查看构造器的 prototype 属性是否存在于对象的原型链上。因此,instanceof 主要用于判断对象类型。例如,使用 new String("I am string") 构造字符串时,同样可以使用 instanceof 进行判断。
另一种方法是利用 Object.prototype.toString.call() 方法。默认返回值为 "[object type]",其中的 type 即数据类型。使用此方法时必须使用 call。详情可查阅 MDN 文档。
最后,我们可以通过借助库来简化判断过程。例如,可以使用 lodash 的 isString 方法进行判断。
以上即为我所能想到的全部方法。