javaScript中数据类型,$ is not a function问题
2015-11-29 20:33
696 查看
javaScript中数据类型
学习一周js,做一个数据类型总结,遇到一个$ is not a function问题,已解决,遇到过相同的问题,看这里。数据类型
类型 | 参数 |
---|---|
字符串 | “word”,’word’; |
数字 | 12345,1.234,2e-5; |
布尔 | true,false; |
数组 | new Array(“a”,”b”,”c”); |
对象 | {“age”:123,”name”:”bill”}; |
Null | 空 |
Undefined | 不含有值,运算出错也会报这个 |
比如:
var x; // x 为 undefined var x = 6; // x 为数字 var x = "Bill"; // x 为字符串
第一次写弱类型的语言,不像c,java,一样的强类型语言,以为终于可以摆脱各种类型,想怎么用就怎么用!那就错了。
回调函数:
//定义 var num1; var num2; //加法 function sum(num1,num2){ return num1+num2; } //乘法 function mul(num1,num2){ return num1*num2; } //传入一个方法名和两个数值 function cal(calname,num1,num2){ return calname(num1,num2); } //测试 var result=cal(sum,1,2); alert(result);
1、万事大吉,正确输出:
2、再来一个,仅测试方式改为输入参数:
//测试 var line=prompt("输入方法名 数值1 数值2,以空格隔开"); var ops=line.split(" "); //输出运算方法 alert(ops[0]); var result=cal(ops[0],Number(ops[1]),Number(ops[2])); alert(result);
3、好像就是一个很简单的计算,可以输出方法名,但不能输出结果,再看控制台:
解决方法
//测试 var line=prompt("输入方法名 数值1 数值2,以空格隔开"); var ops=line.split(" "); alert(ops[0]); var result=cal(eval(ops[0]),Number(ops[1]),Number(ops[2])); alert(result);
eval:
eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。平常用的不多,在这里相当于把String类型转为function!
完整代码
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>csdn_text01_js_01</title>
<script>
//定义
var num1;
var num2;
//加法
function sum(num1,num2){
return num1+num2;
};
//乘法
function mul(num1,num2){
return num1*num2;
};
//传入一个方法名和两个数值
function cal(calname,num1,num2){
return calname(num1,num2);
};
//测试 var line=prompt("输入方法名 数值1 数值2,以空格隔开"); var ops=line.split(" "); alert(ops[0]); var result=cal(eval(ops[0]),Number(ops[1]),Number(ops[2])); alert(result);
</script>
</head>
<body>
</body>
</html>
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 我是运营,我没有假期
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- JavaScript 各种遍历方式详解
- call/apply/bind 的理解与实例分享
- 如何创建对象以及jQuery中创建对象的方式
- IE8开发人员工具教程(二)