Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 执行此操作的最快方法是什么?三元运算符?转换阵列?_Javascript_Performance_Optimization_If Statement_Ternary Operator - Fatal编程技术网

Javascript 执行此操作的最快方法是什么?三元运算符?转换阵列?

Javascript 执行此操作的最快方法是什么?三元运算符?转换阵列?,javascript,performance,optimization,if-statement,ternary-operator,Javascript,Performance,Optimization,If Statement,Ternary Operator,执行此操作的最快方法是什么?左侧参数中的变量返回布尔值,它们表示窗口大小范围。(例如,对于1281及以上屏幕,o1281返回true,对于1025及以上屏幕,o1025返回true,等等) 我在想,也许可以根据中间(o641)条件将其分为两个范围 值得吗?好的,那么你要做的就是寻找第一个按降序排列的真值,一旦你找到了一个,你就在寻找第一个真值r值,它的名字是,人们怎么理解呢?什么是rxxx?r####值都是var。例如,它们可能是图像URL,数字越大表示分辨率越高的图像。omarkup是默认值。

执行此操作的最快方法是什么?左侧参数中的变量返回布尔值,它们表示窗口大小范围。(例如,对于1281及以上屏幕,
o1281
返回
true
,对于1025及以上屏幕,
o1025
返回
true
,等等)

我在想,也许可以根据中间(
o641
)条件将其分为两个范围


值得吗?

好的,那么你要做的就是寻找第一个按降序排列的真值,一旦你找到了一个,你就在寻找第一个真值r值,它的名字是
,人们怎么理解呢?什么是
rxxx
?r####值都是
var
。例如,它们可能是图像URL,数字越大表示分辨率越高的图像。
omarkup
是默认值。它需要在DOM准备好并且在
.resize
函数中出现(所以它会在浏览器窗口调整大小或智能手机旋转时出现)。在这里看到完整的内容:我意识到我可以简单地将三角形的最后两行合并到
r0 | | omarkup;//0-319
因为在这一点上,我们知道我们低于320,我们知道这是唯一两个有效的值。@ryanve我明白了。是的,在调整尺寸和回流焊期间,效率非常重要。我在回答中添加了一条评论。很好/再次感谢。好的观点。(我在编辑它时肯定是在使用查找和替换:)我不认为需要再添加很多点,但可能需要添加一些。(这些是响应性设计的断点。)r值和三角形都在相同的
中。每个
函数(在调整大小的内部)。r值从数据属性和
中提取。每个
都需要检索并应用每个元素的值。尽管在实践中,只有一些属性会出现问题。一次使用。这确实是介于您拥有的和使用for循环计算值之间的某个地方。如果它符合您的性能标准,就可以了。一般规则是尽可能的可读性和可维护性,但是如果您遇到编译器无法帮助您的情况,并且您必须提高性能,那么就这样做。好吧,也许这是一个过于简单化的说法,但这是一个很好的起点。。。。无论如何,我认为公平地说,调试3、2、1、0比调试多个版本的12811025961641更容易
markup = // ternary triangle (the rows set the markup priority at each band)
    ( o1281 ) ? r1281 || r1025 || r961 || r641 || r481 || r320 || r0 || omarkup: 
        ( o1025 ) ? r1025 || r961 || r641 || r481 || r320 || r0 || omarkup: 
            ( o961 ) ? r961 || r641 || r481 || r320 || r0 || omarkup: 
                ( o641 ) ? r641 || r481 || r320 || r0 || omarkup: 
                    ( o481 ) ? r481 || r320 || r0 || omarkup: 
                        ( o320 ) ? r320 || r0 || omarkup: 
                            ( o0 ) ? r0 || omarkup: 
                                omarkup;
var sizes = [1281,1025,961,641,481,320,0]