最近在做地图 后端返回地点看着是个数组 结果渲染不上去 才发现两头多了个引号 行吧 懒得让后端改了
let arr = "[114.254587,22.5447845]"
用eval(arr)
了解eval()函数 eval():
作用:它的作用是把对应的字符串解析成js代码并运行(将json的字符串解析成为JSON对象);
特点:它是一个全局函数;
缺点:1>在该函数内部申明的变量都是全局变量,且申明的变量不会提升;
2>耗性能,执行2次,一次解析成js语句,一次执行js代码;
后来代码上交被大佬看见了 改成了JSON.parse()
因为对eval的兴趣,看了红宝书,专门介绍了表达计算式,在这里做一个记录。
1.条件运算符( ?: ) 就是三元运算符 和if有同样的效果 只是三元更加简洁
2.typeof运算符 -一元运算符 放在某个操作数面前 操作数可以是任何类型 返回值是表示操作数类型的一个字符串 常用的表达式 结合三元运算符
(type value == 'string') ? "'" + value + "'" : value 在switch 同样很有用
3.delete -一元操作符 用来删除对象属性或者数组元素
var o = { x:1, y:2}
delete 0.x
var arr = [ 1,2,3 ]
delete a[2]
4.void 运算符
5.逗号运算符(,) -二元运算符
操作可以是任意类型 首先计算左边 再依次往右 最后返回右操作数的值。